0
構造ディレクティブ内から別の属性にバインドする私はこのように使用する構造SpinnerDirective
:どのように私が作成した
<div *spinner="'spinner1'" spinnerMessage="Loading many things...">
<p>Hide this while loading...</p>
</div>
ディレクティブのコードは次のようになります。
@Directive({
selector: '[spinner]'
})
export class SpinnerDirective {
private _defaultMessage = 'Loading...';
@Input('spinner') spinnerName: string;
@Input('spinnerMessage') set message(messageStr: string){
console.log('setting message of', messageStr);
this._defaultMessage = messageStr || this._defaultMessage;
}
// ...
}
問題:セッターメソッド(set message
)が呼び出されることはありません。
私は次のように角度が私のテンプレートを「desugars」ためである疑いがある:
<template [spinner]="'spinner1'">
<div spinnerMessage="Loading many things...">
<p>Hide this while loading...</p>
</div>
</template>
しかし、私はまだディレクティブ内からspinnerMessage
にアクセスする方法がわかりません。何か案が?