我正在尝试在范围内设置值(在我的情况下来自服务),然后在模板中使用它们。
注释掉的模板行显示了我期望的值,但未注释的模板行不能按预期工作。为了便于阅读,我从ng-dropdown-multiselct中删除了一些属性。如果我手动设置值,ng-dropdown-multiselect按预期工作,所以我知道标记是正确的,只是无法设置值。
非常感谢任何帮助!
.directive('myFilter', [function () {
return {
//template: '<div>{{ PreparersCustomTexts }}</div>',
template: '<div ng-dropdown-multiselect="" translation-texts="PreparersCustomTexts"></div>',
restrict: 'E',
scope:'=',
link: function postLink(scope, element, attrs) {
scope.PreparersCustomTexts = { buttonDefaultText: 'Select Preparers' };
}
};
}])
;
答案 0 :(得分:0)
问题可能在你的HTML中。你应该把它添加到你的问题中。
同时,这里使用您的指令的示例代码,以及带有您的指令的plunker成功获取模板定义的范围值!
angular.module('plunker', [])
.directive('myFilter', function () {
return {
template: '<div>{{ PreparersCustomTexts }}</div>',
//template: '<div translation-texts="PreparersCustomTexts">test</div>',
restrict: 'E',
scope:'=',
link: function postLink(scope, element, attrs) {
scope.PreparersCustomTexts = { buttonDefaultText: 'Select Preparers' };
}
};
})
;
&#13;
<!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.8/angular.min.js"></script>
<script src="app.js"></script>
</head>
<body ng-app="plunker">
<div>
<p>Hello {{name}}!</p>
<my-Filter></my-Filter>
</div>
</body>
</html>
&#13;