即時混淆約2路數據綁定角度。看代碼! var bah
可以訪問父對象$scope.something
,但是當我單擊按鈕時,控制器中的值更改爲false
,但不在指令中。怎麼了?是一個錯誤?2路數據綁定指令角度
如何解決這個問題?感謝幫助我,希望你請寫一個例子感謝或引用鏈接
HTML
<div ng-controller="myController">
show me something {{ something }} <br>
<button ng-click="toggleSomething"><button>
<!-- this is a canvas -->
<my-directive></my-directive>
</div>
JS
angular.module('fooBar',[]).controller('myController', ['$scope', function($scope) {
// this is the something
$scope.something = true;
$scope.toggleSomething = function(){
if($scope.something) {
$scope.something = false
} else {
$scope.something = true
}
}
}]).directive('myDirective', function(){
return {
template: '<canvas width="500px" height="500px"></canvas>',
link: function(scope, el, attr) {
//how to access that 'something'
var bah = scope.$parent.something;
}
};
});
UPDATE 真的給你所有。尤其是對你來說@immirza
即時對不起,我不能一一答覆你。 它只是添加$parent
//how to access that 'something'
var bah = scope.$parent.something
你怎麼知道'something'在'directive'中沒有改變? –
只是寫console.log(範圍。$ parent.something)..哈哈我真的基本在js和角度。 XD – Cecep
umm oky事情是'console.log(scope。$ parent.something);'是打印一次(應該是真的),如果你把它放在指令鏈接函數中不是嗎?那麼如何在click in指令後檢查值以確認該值沒有變化? –