なので、よくこんなことをします
save(...keys: string[]) {
keys.foreach(x => // save);
}
スプレッド演算子により、これをこれらの方法のいずれかで呼び出すことができます。
save('string1', 'string2');
save(['string1', 'string2']);
save('string');
私はこの動作が大好きですが、同じように動作させたいコンポーネントに @input がある場合があります。1 つの項目だけを指定したい場合もあれば、配列を指定したい場合もあります。この構文はどのように適用できますか? このようなことができるようになりたいです。
@Input() ...myClass: ClassBase[] = [];
と、こういう使い方。
// ts
currentClass = new ClassBase();
conflictingClasses = [new ClassBase(), new ClassBase()];
// html
<my-component [myClass]="currentClass"></my-component>
<my-component [myClass]="conflictingClasses"></my-component>
どうすればこの種の動作を取得できますか? すでにこのコンポーネントをいくつかの場所で使用していますが、1 つのアイテムしか与えていません。アイテムの配列を取るようにこのコンポーネントを変更するために一括リファクタリングする必要はありません。
ありがとう!