AngularJS在指令模板中评估$rootScope变量

前端之家收集整理的这篇文章主要介绍了AngularJS在指令模板中评估$rootScope变量前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个创建输入字段的指令.
我需要将此输入字段的ng-model属性设置为$rootScope的值
变量.
原因之一是我希望输入字段在布局中,并根据加载的页面绑定到不同的模型.
我以为我会在每个控制器中设置这个全局变量,并在指令中访问它.

ATM变量是硬编码的

App.run(function($rootScope){
    $rootScope.mymodel = 'search.name';
})

和指令

Directives.directive('inputFilter',function(){
    return{
        restrict: 'E',replace:true,controller: function($scope,$rootScope){
            console.log($scope.mymodel);
            console.log($rootScope.mymodel)

        },template: '<input class="filter" type="text" ng-model="mymodel" placeholder="Nach filtern">'
    }

});

它被渲染为

<input class="filter ng-pristine ng-valid" type="text" ng-model="mymodel" placeholder="Filter">

输入字段中的文本是mymodel变量的值. console.log显示

search.name
search.name

有人可以在这个问题上说明一下吗?

我想你想要的是
template: '<input class="filter" type="text" ng-model="' 
  + $rootScope.mymodel + '" placeholder="Nach filtern">'

Fiddle.

请注意,您需要将$rootScope注入您的指令:

Directives.directive('inputFilter',function($rootScope) {

猜你在找的Angularjs相关文章