这是我的应用程序配置:
angular.module('myApp', ['myApp.directives', 'myApp.controllers', 'myApp.services']);
这是我的控制器:
angular.module('myApp.controllers', [])
.controller('MainCtrl', function ($scope) {
$scope.name = 'world';
});
这是我的指令:
var directives = angular.module('myApp.directives', []);
directives.directive("hello", function () {
return function (scope, elm, attrs) {
elm.text("hello, " + scope[attrs.name]);
};
});
这是我的 HTML 代码:
<div ng-controller="MainCtrl">
<h1 hello></h1>
</div>
问题在于angular将指令呈现为:
你好,未定义
而不是:
你好,世界
有什么问题吗?
scope: {...}
属性,从而创建了一个新的隔离作用域。这样做会阻止原型继承。 - vcardillo