这.set和Ember.set有什么区别?

4
这.set('firstName','ember')和Ember.set(this,'firstName','ember')这两种条件之间有什么区别吗?

请查看:http://stackoverflow.com/questions/43285202/what-is-the-difference-between-setthis-agentname-john-and-this-setagen - ykaragol
1个回答

7

Ember的计算属性链和观察器依赖于您在相关对象上调用object.set()。如果您忘记调用,通常会看到此类警告。

然而,有时您可能不知道所传递的对象是Ember.Object还是普通的JavaScript对象。这就是Ember.set()发挥作用的地方 - 它可以用于两种类型的对象。

const setFoo(target, value) {
    Ember.set(target, 'foo', value);
}

const a = {foo:null};
const b = Ember.Object.create({foo:null});

// both calls are valid because we use Ember.set()
setFoo(a, 'johnny');
setFoo(b, 'bravo');

这里是官方文档,可能会有所帮助:Ember.set()

(此处无需翻译)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接