我试图将模型(Object)传递到指令的范围内,但它传递的是字符串而不是对象。
指令html。
<blabla obj="obj"></blabla>
指令:
.directive( 'blabla' , function(){
return {
restrict : 'E',
replace: 'true',
scope :{
obj : '=obj'
},
link : function(scope , elem , attrs){ console.log(attrs);
scope.obj = attrs.obj;
}
}})
然后在控制器中我有:
$scope.obj = { name : "obj"};
这就是我在控制台中获得的内容
obj: "obj"
我错过了什么吗?为什么渲染&#39; obj&#39;作为String而不是获取对象?如果我在页面上打印它可以正常工作,但它并不能将它传递给指令。
答案 0 :(得分:3)
不要使用attrs.obj。 一旦运行链接功能,您应该已经对范围进行了obj