【问题标题】:Emberjs bindings without static path?没有静态路径的 Emberjs 绑定?
【发布时间】:2012-07-27 21:50:32
【问题描述】:

我在一个函数中有两个可用的 ember 对象,但我似乎无法弄清楚如何在它们之间创建绑定,因为我无法通过静态路径引用它们。这些对象在 javascript 函数中被引用为var avar b

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

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

【问题讨论】:

    标签: ember.js


    【解决方案1】:

    所有路径都必须相对于“this”(无论对象是什么,或者应用中的内容),或者如您所说的,全局路径。但是,一旦您进入您提到的功能,没有什么可以阻止您设置相对路径。

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

    一旦它们相互引用,您就可以将相对路径添加到您的心脏内容中。我宁愿这样做而不是创建具有相对范围的方法,这样您就不会错过任何更新值。

    我创建了一个简单的jsfiddle 来向您展示我的意思。我通常会创建一个视图等,但试图将其保持在几行。

    话虽如此,我觉得您应该能够通过在 Binding 上设置 _to 或 _from 直接在对象之间绑定。但是通过该代码,似乎一切都是相对的和基于路径的。也许在框架的 1.0 版本中转换的东西会发生变化。

    【讨论】:

    • 啊,所以我可以像那样使用相对路径。很棒的信息!
    猜你喜欢
    • 2013-09-07
    • 2016-04-02
    • 1970-01-01
    • 1970-01-01
    • 2011-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多