2016-03-23 46 views
2

我有一個功能爲init()的控制器。 傳遞給init()的屬性是一個對象。像這樣:從傳遞給數組的對象設置控制器屬性

init({ 
    a: "A", 
    b: "B" 
}); 

如何將這些對象的值綁定到我的控制器? 我試過這個,但它不起作用。

this.init = function(params){ 
    angular.forEach(params, function (value, key) { 
     this[key] = value; 
    }); 
} 

我要的是當init()完成控制器已提前

回答

4

局部變量

this.a = "A"; this.b = "B";

感謝您無法訪問this回調函數內。所以你所要做的就是,

var self = this. 
this.init = function(params){ 
    angular.forEach(params, function (value, key) { 
     self[key] = value; 
    }); 
} 
+0

這樣做!謝謝 – Jacob

+1

歡迎。幾個月前我面臨的同樣的問題。 – Ved

相關問題