カスタム入力コンポーネントが角度2にあります。カスタムコンポーネントに属性を追加する適切な方法は何ですか?私たちの入力コンポーネントの要点は、このようなものです。カスタムアンギュラ2コンポーネントに属性を追加する適切な方法
入力-debounce.component.ts
var template = `
<input
[type]="inputType"
[placeholder]="placeholder">
`;
@Component({
selector: "input-debounce"
template: template
})
export class InputDebounceComponent {
@Input() inputType: string = "text";
@Input() placeholder: string = "";
}
カスタムコンポーネントにaria-label
属性を追加する適切な方法は何ですか?
<input-debounce
[inputType]="'number'"
[placeholder]="'Enter Number'"
[attr.aria-label]="'Age'">
</input-debounce>
またはtemplate
で[aria-label]="ariaLabel"
を追加して、クラスの@Input() ariaLabel = "";
カスタムコンポーネントを使用した場合、その後、[ariaLabel]="'Age'"
のようにそれを呼び出しますか?
私が2番目のやり方をしたとき、ウィンドウのナレーターは私が入れたアリアラベルを発表しますが、最初の方法は何も言いません。
これは意味があります!それはまた私が問題に近づいた方法です(2番目の方法を使用して)。しかし、Angularの経験を持つチームの誰かが、私がまだAngularを初めて経験して以来、私を混乱させる最初の方法を提案しました。私はちょうど私の理解を確認したかった:それはあなたが単にそれにプロパティバインディングを追加することはできませんカスタムコンポーネントだから、正しかったと狂っていない! – midnightnoir