基本上,我希望这可以工作:
myApp.directive('myDirective', function() {
var someObj = {"shout": "Yodelayheehoo"};
return {
restrict: 'E',
template: "<my-special-directive my-obj="someObj"></my-special-directive>"
}
});
我希望mySpecialDirective
接收myDirective
中定义的对象,但事实并非如此。
使这项工作的语法(如果有的话)是什么?
答案 0 :(得分:0)
当你创建一个指令时,你可以创建一个链接函数(Make指令的所有逻辑),该函数的第一个参数是指令的范围。然后,您需要将变量添加到该范围内以访问指令内部。
var app = angular.module('asd', []);
app.directive('myDirective', function() {
var someObj = {"shout": "Yodelayheehoo"};
return {
restrict: 'E',
template: "<my-special-directive my-obj='someObj'>{{someObj}}</my-special-directive>",
link:function(scope) {
scope.someObj = someObj;
}
}
});
<script data-require="angular.js@1.3.x" src="https://code.angularjs.org/1.3.13/angular.js" data-semver="1.3.13"></script>
<body ng-app="asd">
<my-directive></my-directive>
</body>