1
我有以下代碼:呼叫從參數指令控制器功能
(function() {
'use strict';
angular
.module('app', []);
})();
(function() {
'use strict';
angular
.module('app')
.controller('MainController', MainController);
function MainController() {
var vm = this;
vm.onResize = function(viewport) {
console.log('onResize', viewport);
};
}
})();
(function() {
'use strict';
angular
.module('app')
.directive('resize', resize);
function resize($window) {
var directive = {
restrict: 'A',
scope: {
callback: '&resize'
},
link: link
};
return directive;
function link(scope) {
angular.element($window).on('resize', function() {
scope.callback({
width: 100,
height: 200
});
});
}
}
})();
Plnkr演示:http://plnkr.co/edit/s7x28XI08QUytTVORtaK
正如你可以看到我試圖創建一個回調函數的簡單調整大小的指令,我將調整窗口大小後調用。我的問題是我想傳遞一些參數給回調函數,但它目前根本無法工作。而不是我已經傳遞給onResize
函數中的回調viewport
函數的對象是undefined
。我是Angular的初學者,所以請解釋我在這裏做錯了什麼將不勝感激。謝謝。
也就是說這裏解釋:https://docs.angularjs.org/api/ng/service/$ compile#-scope-,以*&或&attr *開頭的項目符號。 –