2012-07-27 147 views
1

我有两个可用的函数中的余烬对象,但我似乎无法弄清楚如何创建它们之间的绑定,因为我不能通过静态路径引用它们。这些对象在JavaScript函数中引用为var avar b没有静态路径的Emberjs绑定?

如何创建两个对象之间的绑定,当我不能像App.controller.content或类似的引用其中之一?

或者,我可以通过一些静态路径引用ArrayControllers内容中的特定ember对象吗?我已经尝试了两种对象的getPath方法的许多变体,但似乎无法让它返回一些有用的东西。

回答

2

所有的路径都必须与“this”(无论对象是什么或适用什么)或者如你所述的全局路径相关。但是,一旦你在你提到的功能中,没有什么能阻止你设置相对路径。

a.set('b': b); 

a.set('someMethod', function(){ 
    return this.getPath('b.methodName'); 
}.property('b.methodName')); 

一旦他们互相参考,您可以添加相对路径到您的心中的内容。我宁愿通过创建一个相对范围的方法来做到这一点,所以你不会错过任何更新值。

我创建了一个简单的jsfiddle来向你展示我的意思。我通常会创建一个视图等,但试图保持它只有几行。

现在说,我觉得你应该能够通过在绑定上设置_to或_from直接绑定对象。但通过该代码翻看,似乎一切都是相对的基于路径的&。也许转换的东西会在1.0版本的框架中发生变化。

+0

ahh,所以我可以使用相同的路径。伟大的信息! – oskbor 2012-07-28 19:18:23