我想要做的事情非常简单,这里有一个小提琴来说明我想要实现的目标:code here:
http://jsfiddle.net/vxpc1dry/
基本上在数据获取成功时,我想将返回的响应数据对象传递给动态编译的指令,只是数据对象似乎是未定义的,不管是什么:(
知道我做错了什么吗?非常感谢!
答案 0 :(得分:2)
angular.element(document.getElementById('dirContainer')).append($compile("<my-dynamic-directive name='data.name' data='data'></my-dynamic-directive>")(scope));
使用双向=或单向&amp;绑定而不是text @ binding
myApp.directive("myDynamicDirective", function () {
return {
restrict: "E",
scope: {
data: "=",
name: "="
},
template: "<div class='dynadir'><div>hello {{name}} <-- OK</div>"+
"<div>hello {{data.name}} <-- WTF?</div></div>", // <- undefined why?
link: function (scope, element, attr) {
console.log("The data passed: %O", scope.data); // <- undefined why?
}
}
});