Javascript 使用&;从隔离作用域调用表达式;不直接工作
我对Angular很陌生,所以我很确定我在这里遗漏了一些东西。 我刚刚读了一篇关于独立作用域的文章,其中的表达式特别使用&symbol 这是一把小提琴,其中包括一把小提琴 我正在尝试做一些更简单的事情,我想使用一个函数,但不想使用按钮进行调用,我想直接调用函数。我将fiddle中的代码缩减为,但它没有效果,函数没有被调用,或者它没有按照我的预期执行 如果我取消注释行#12,则会显示“Hello”,如果显示“comment”,则我希望文本框中会显示“as”,但它会被清除。我错过了什么 谢谢 顺便说一句,我似乎不能使剪断的工作,但小提琴工作良好Javascript 使用&;从隔离作用域调用表达式;不直接工作,javascript,angularjs,angularjs-directive,angularjs-scope,Javascript,Angularjs,Angularjs Directive,Angularjs Scope,我对Angular很陌生,所以我很确定我在这里遗漏了一些东西。 我刚刚读了一篇关于独立作用域的文章,其中的表达式特别使用&symbol 这是一把小提琴,其中包括一把小提琴 我正在尝试做一些更简单的事情,我想使用一个函数,但不想使用按钮进行调用,我想直接调用函数。我将fiddle中的代码缩减为,但它没有效果,函数没有被调用,或者它没有按照我的预期执行 如果我取消注释行#12,则会显示“Hello”,如果显示“comment”,则我希望文本框中会显示“as”,但它会被清除。我错过了什么 谢谢 顺便说
var myModule=angular.module('myModule',[])
.directive('myComponent',function(){
返回{
限制:'E',
范围:{
isolatedExpressionFoo:“&”
}
};
})
.controller('MyCtrl',['$scope',函数($scope){
$scope.foo='Hello!';
//$scope.isolatedExpressionFoo();
$scope.updateFoo=函数(){
$scope.foo='as';
}
}]);代码>
控制器的$scope和指令是两个不同的范围。控制器$scope无法访问isolatedExpressionFoo
功能
要立即调用提供给指令的函数(从指令内部),您需要为所述指令实现一个控制器
例如
var myModule = angular.module('myModule', [])
.directive('myComponent', function () {
return {
restrict:'E',
scope:{
isolatedExpressionFoo:'&'
},
controller: function($scope){
$scope.isolatedExpressionFoo();
}
};
})
.controller('MyCtrl', ['$scope', function ($scope) {
$scope.foo = 'Hello!';
$scope.updateFoo = function () {
$scope.foo = 'as';
}
}]);