Aureliaに類似関数$ applyまたは$ digestはありますか? 直ちに呼び出しがbindingValueをどのように変更しますか?
私の場合: 私はツリーを持っています(各ノードにはアイテムのリスト、画面1が含まれています)。私は親コンポーネント(名前:ツリー)とノードコンポーネント(名前:ノード)を持っています。 各ノードにはトグルボタンがあります。私のアイテムを切り替えるとき、親コンポーネントはコンテンツの高さの変化を知るべきです。
toggleNode(event) {
for (var i = 0, length = this.current.children.length; i < length; i++) {
this.current.children[i].visible = !this.current.children[i].visible;
}
//some code
this.evAggregator.publish("toggle-agents", event);
}
ビュー:
<ol show.bind="current.visible">//Some markup</ol>
私の親コンポーネントキャッチこのイベントとコンテンツのサイズを確認します
@autoinject
export class Agents {
constructor(private evAggregator: EventAggregator) {
this.toggleAgentsSubscriber = this.evAggregator.subscribe("toggle- agents", (e) => {
//some code for recalculate content height
});
}
を}
今のコードがそれを実行します。 1)this.current .children [i] .visible = false(ノードが崩壊したとき) 2)イベントを発生させる"toggle-agents" 3)サブスクライバが自分のイベントをキャッチ(高さを再計算) 4)Aurelia ObserverLocatorの深さで、DOMと高さが変更されました。
私が必要: 1)this.current.children [I] .visible =偽(場合、ノード崩壊) 2)深さアウレリアObserverLocatorでDOMと高さの変化で私(可視性)を更新します。 3)カスタムイベントを発生させます。 4)サブスクライバがイベントをキャッチし、高さの内容が実際に変更されたときに高さを再計算します。
私はシグナル技術を使用しようとしましたが、結果は得られません。たぶん私は間違ったことをしているのかもしれない私の場合の説明が追加されています。 –