手表和条件模板的指令改进

时间:2014-04-08 10:01:48

标签: angularjs

这是指令:

.directive("unloggedWarning", function () {

        return {
            restrict: "EA",
            link: function (scope) {
                scope.$watch('currentUser', function() {
                    if(scope.currentUser === null) {
                        scope.notLogged = true;

                    } else {
                        scope.notLogged = false;
                    }                });
            }
        };

    })

currentUser是具有Parse后端的rootscope持久用户当前状态。因此,每当用户注销时,手表都会将notLogged设置为true。我想我可以在html文件视图中使用conditonal ng-if在用户取消登录时显示警告。

我怎么能改进这个指令,所以从INSIDE指令,我可以有条件地注入一个带有一些html的模板?我似乎无法将if语句中的日志状态传递给指令中的标准指令“template:”参数。

1 个答案:

答案 0 :(得分:1)

以下是一个工作示例:http://plnkr.co/edit/S9fVZKXLx0Fc6QpkI8iH?p=preview

我所做的就是添加模板:

 template: '<div><div ng-show="notLogged">You are not logged in</div></div>',