所有,
当涉及到指令时,我对angularjs的理解是当你有一个像这样的隔离范围设置时:
scope: { dataSource: '=' }
在链接功能内: function(scope, ele, attr)
如果像这样使用,scope
将有一个dataSource
绑定到name
我的控制器上的属性:
然而事实并非如此,这是一个例子:
http://jsfiddle.net/HB7LU/21879/
谢谢
史蒂夫
将scope属性的名称更改dataSource
为source
.因为data
是保留名称.
var myApp = angular.module('myApp', []); //myApp.directive('myDirective', function() {}); //myApp.factory('myService', function() {}); myApp.controller('MyCtrl', function($scope) { $scope.name = 'Batman'; }) .directive('myElement', function() { return { template: 'Hello {{source}}', replace: true, restrict: 'E', scope: { source: '=' }, link: function(scope, ele, attr) { console.log(scope.source); } } })
代码小提琴