您好,我需要使用一個控制器的結果範圍中的變量到另一個控制器。我可以通過使用嵌套控制器實現這一點,但在我的情況下,我的控制器2不是控制器1的孩子。我以某種方式能夠實現我的輸出與以下控制器,但我仍然想知道這是最佳實踐,如果不是我怎麼能通過各控制器之間的變量。如何在控制器中傳遞變量在AngularJS中
angular.module('test',[])
.factory('PassParameter', PassParameter)
function PassParameter(){
var thisValue = {};
return {
getParameter: function() {
return thisValue;
},
setParameter: function (setValue) {
_.extend(thisValue, setValue);
},
removeParameter : function(value) {
_.omit(thisValue, value);
}
};
};
i傳遞一個對象給setParameter函數,並從getParameter函數獲取其值。
那麼我目前正在使用像你這樣的setter/getter工廠,除了我使用Localstorage來保存一些數據之外,antoher選項將使用$ rootScope,它在所有控制器中都可用,但是我不建議只爲少數重要的變量 – stackg91
做那樣的事情那裏的服務。它們是你可以在控制器內部注入的函數,你可以將settere和gettere放在裏面,這樣你就可以將這個變量注入到你想要的任何地方。 – mautrok