私は非常に単純なことをしようとしていると思っていましたが、この作業を行うことはできません。この全体の例は次のとおりですplunkrAureliaの親と子のカスタム要素間の双方向バインド
変更されたイベントで表示および監視するデータ・メンバー@bindable
を提示する非常に基本的なカスタム要素があります。それは次のようになります。
import {bindable} from "aurelia-framework";
export class ChildElementCustomElement {
@bindable childData;
childDataChanged(value) {
alert("Child Data changed " + value);
}
}
とビューを:
<template>
<div style="border: solid 1pt green;">
<h2>This is the child</h2>
This is the child data : ${childData}
</div>
</template>
は親が子要素を示していますが、私は子供の親メンバーで非常に変更にバインドされています、そのビューモデルのメンバーが欲しいです子供に自動的に反映されます。ここでは、親のコードは次のとおりです。
import {bindable} from "aurelia-framework";
export class App {
parentData = "this is parent data";
}
とビュー:私は見てみたいと思い何
<template>
<h1>Two-way binding between parent and child custom elements</h1>
<require from="./child-element"></require>
<child-element childData.bind="parentData"></child-element>
<hr/>
<label>The following is the parent data:</label>
<input type="text" value.bind="parentData"></input>
</template>
は、入力フィールドに入力されたすべての更新が自動的に子に表示されますです(プラス変更イベントが発生します)しかし、子供はまったく見えません!私はまた、コンベンションがone-way
にバインドされていてもまだ動作していない場合に備えて、two-way
のスワップbind
を試してみました。
私の愚かさを強調してください:)現在、私はこれがちょうどうまくいくと思って立ち往生しています。
で
child-data.bind
を記述する必要があります!私はダッシュケースの存在を知っていましたが、この文脈(顔面)でそれを試していませんでした。 @nemesv - ありがとう:) – Phil私は、ドキュメントはこれを非常に強調表示しないことを追加してもいいですか?答えをありがとう! –
ドキュメントのリンクが壊れてplsを更新できます –