为什么这个 angularjs 指令不显示绑定的文档
Why does this angularjs directive not show the bound document?
我有一个指令,其中包含来自控制器的绑定文档模型。但是指令没有显示文件?
.HTML:
<div ng-app="myApp">TestApp:
<div ng-controller="TestController as Test">Testdoc controller: {{Test.doc}}
<br>
<test-me ng-init="abc=123" my-model="Test.doc">Testdoc directive: {{myDoc}} | {{abc}}</test-me>
</div>
</div>
.JS:
var app = angular.module("myApp", []);
app.controller("TestController", function () {
this.doc = {
name: 'testname',
id: null
};
});
app.directive("testMe", function () {
return {
scope: {
myDoc: '=myModel'
},
link: function(scope, elem, attrs){
}
}
});
输出 HTML 仍然是:
TestApp:
Testdoc controller: {"name":"testname","id":null}
Testdoc directive: <missing output of doc here>| 123
JSFIDDLE: http://jsfiddle.net/kx97y93k/14/
我做错了什么?
解决方案不是直接在 html 中调用 {{myDoc}},而是在模板中调用。
app.directive("testMe", function () {
return {
restrict: 'E',
template: '<div>Testdirective: {{myDoc}}<div>',
scope: {
myDoc: '=myModel'
},
link: function(scope, elem, attrs){
}
}
});
请参阅更新的 jsfiddle: http://jsfiddle.net/kx97y93k/18/
非常感谢@Mr_Green的提示
将 limit : 'E' 添加到 DDO 中,见下文。Angular 1.2 使用限制:"A",如果没有明确设置。对于成为"EA"的 Angular 1.3,您的指令将起作用。要使其在您的小提琴中工作,请按如下方式更改它:
app.directive("testMe", function () {
return {
restrict : 'E',
scope: {
myDoc: '=myModel'
},
link: function(scope, elem, attrs){
}
}
});
相关文章:
- 有没有比在app.js上绑定模块名称更好的方法来动态加载视图模型和视图以显示模态
- 使用AngularJs数据绑定的三元运算符显示图像
- 嵌套的foreach绑定未正确显示
- 敲除:可观察数组没有被正确绑定——只有1个结果显示,而api返回6
- 挖空和显示模块模式的数据绑定问题
- 悬停卡未显示在具有绑定的 KNOCKOUTJ 中
- AngularJs的绑定值未显示
- Angularjs-将指令中的值绑定到文档中的任意位置显示/隐藏
- 使用knockoutjs绑定和显示字典
- angularjs绑定赢得'除非我打GET电话,否则不会显示
- 显示绑定到动态生成的元素的所有事件处理程序
- 在显示绑定属性之前在 JavaScript 中格式化绑定属性
- Knockout JS值不显示/绑定/更新,但可通过ko.toJS($data).value获得
- 为什么这个 angularjs 指令不显示绑定的文档
- 无法显示绑定值
- 隐藏/显示绑定到计数器的按钮
- 在使用ng-model时,如何在显示绑定值之前格式化它
- 自定义Knockout绑定处理程序不显示绑定
- 显示绑定数据的SAPUI5错误
- 如何刷新具有cellFilter的ui-grid单元格,以便在一个单元格中显示绑定实体的多个字段