【发布时间】:2013-05-30 20:46:59
【问题描述】:
我需要从指令中的父控制器继承范围。我不一定要离开范围:假。我也不一定想使用隔离范围,因为它需要做很多工作才能正确链接我关心的值(想想父控制器中的很多值)。
如果我想更新父作用域,在我的指令中使用 scope:true 是否有意义?
<div ng-controller="MyCtrl">
Hello, {{name}}!
<my-directive></my-directive>
</div>
var myApp = angular.module('myApp',[]);
//myApp.directive('myDirective', function() {});
//myApp.factory('myService', function() {});
function MyCtrl($scope) {
$scope.name = 'Dave';
}
myApp.directive('myDirective', function() {
return {
scope: true,
restrict: 'EA',
link: function(scope, elem, attrs) {
scope.updateName = function(newName) {
console.log('newName is: ' + newName);
scope.name = newName;
}
},
template: '<input ng-model="updatedName" placeholder="new name value"> <button ng-click="updateName(updatedName)">Update</button>'
}
})
请查看fiddle
【问题讨论】:
标签: angularjs angularjs-directive angularjs-scope