gpt4 book ai didi

javascript - 在对象创建时动态创建绑定(bind) - 可能吗?

转载 作者:行者123 更新时间:2023-11-30 18:31:10 25 4
gpt4 key购买 nike

是否可以动态创建绑定(bind)?假设我有一个名为“App.obj”的对象,它有两个属性“alpha”和“beta”,我想在两个地方使用相同的 View :

{{view App.AView name="alpha"}}

{{view App.AView name="beta"}}

View 旨在绑定(bind)到 App.obj 的“alpha”或“beta”属性,具体取决于其名称属性设置的内容,这样当绑定(bind)到的属性发生变化时, View 也会发生变化。所以这里练习的重点是,给定一个对象的两个非常相似的属性,我能否只创建一个将绑定(bind)到其中任何一个的 View ,并在该属性更改时更新自身。

是否可以根据在创建时使用“名称”传递给它的内容,使 View 对象动态绑定(bind)到 App.obj 上的 alpha 或 beta?

谢谢

最佳答案

你为什么不做 {{view App.AView name="alpha"objBinding="App.obj"}} 然后在你的 App.AView 定义中:

App.AView = Ember.View.extend({

didInsertElement: function() {
var name = this.get('name');
var objAlpha = this.getPath('obj.alpha');
var objBeta = this.getPath('obj.beta');

if(name == 'alpha') {
console.log(objAlpha);
} else if (name == 'beta') {
console.log(objBeta);
}
}
});

我在 this jsFiddle 中有一个完整的例子.看看你的控制台。

关于javascript - 在对象创建时动态创建绑定(bind) - 可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9579100/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com