从传递给数组的对象设置控制器属性

时间:2016-03-23 10:19:21

标签: javascript angularjs

我有一个功能init()的控制器。 传递给init()的属性是一个对象。像这样:

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

如何将对象的这些值绑定到控制器? 我试过这个,但它没有用。

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

我想要的是当init()完成时,控制器将具有局部变量

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

提前致谢

1 个答案:

答案 0 :(得分:4)

您无法在回调函数内访问this。所以你需要做的就是,

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