我试图在angular中使用指令,我将基于类的对象作为参数传递。 当我说“基于类”时,我的意思是像这个例子中的函数对象:
var User = function() {};
var myUser = new User();
现在,我们假设myUser在我的控制器范围内,我有这个HTML。
<my:directive myUser="myUser" />
然后我定义了指令:
mainApp.directive('myDirective', [function() {
return {
scope: {
myUser: '='
},
restrict: 'E',
replace: true,
templateUrl: 'partials/myDirective.html',
controller: function($scope) {
console.log($scope.myUser);
}
};
}]);
问题是,我没有在指令的控制器中看到myUser。
我最初指责我使用=
声明参数的方式(它必须与对象一起使用,而我的对象却是function
)
所以我尝试用&
改变它,但问题仍然存在。
有人可以帮帮我吗?我究竟做错了什么?甚至可以传递这种物体吗?
答案 0 :(得分:2)