1

関数で使用できる 2 つの ember オブジェクトがありますが、静的パスを介してそれらを参照できないため、それらの間のバインディングを作成する方法がわかりません。オブジェクトは、javascript 関数でvar aおよびとして参照されます。var b

2 つのオブジェクトのいずれかを参照できない場合に、2 つのオブジェクト間のバインディングを作成するにはどうすればよいApp.controller.contentですか?

または代わりに; 静的パスを介して ArrayControllers コンテンツ内の特定の ember オブジェクトを参照できますか? 両方のオブジェクトで getPath メソッドのさまざまなバリエーションを試しましたが、何か有用なものを返すようには見えません。

4

1 に答える 1

2

すべてのパスは、「これ」(オブジェクトが何であれ、適用されたもの)またはあなたが述べたように、グローバルパスに相対的でなければなりません。ただし、言及した関数に入ると、相対パスを設定することを妨げるものは何もありません。

a.set('b': b);

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

それらが相互に参照されると、心のコンテンツに相対パスを追加できます。相対スコープを持つメソッドを作成するよりも、これを行うことをお勧めします。そうすれば、更新値を見逃すことはありません。

私が何を意味するかを示すために、簡単なjsfiddleを作成しました。通常はビューなどを作成しますが、数行に抑えようとしていました。

そうは言っても、バインディングに _to または _from を設定することで、オブジェクト間を直接バインドできるはずだと思います。しかし、そのコードを見ると、すべてが相対パスベースのようです。おそらく、フレームワークの 1.0 リリースで変換の内容が変更されるでしょう。

于 2012-07-28T02:25:11.943 に答える