例を挙げると、Select2や他の多数のコントロールと機能的に似ている、Angular2のマルチセレクトコントロールを開発しています。締め切りはいつ適切ですか?
私は、ユーザーインターフェイスがドロップダウンに含まれているものの定義の面で見えるようにしたいものを定義することによって開始され、二つのオプションを思い付きました。
一つはオプションのため@Input()
Sを使用することです:
<div class=option" *ngFor="let option of options">{{option.display}}</div>
Ahotherは、トランスクルーを使用することで、どのようにmaterial2表示されます:
<my-multi-select [options]="options"></my-multi-select>
...そしてmy-multi-select
用テンプレート内それを行うには:
<my-multi-select>
<my-option *ngFor="let option of options" [value]="option"></my-option>
</my-multi-select>
... my-multi-select
用テンプレート内:
<div class=select-container">
<ng-content select="my-option"></ng-content>
</div>
私はトランスクルーオプション付きの内容だったが、その後、私は実際にmy-option
からmy-multi-select
に来るイベントを結合困難にしてそれにランドを実装するために始めたとき。 Observable
のように、my-option
で起こっていることをmy-select
に通知する方法や、@Output
イベントを使用して詳細に調べる方法を見つけようとしますが、丸い穴に四角いペグを詰め込むように感じています@Input
の変数がちょっと単純かもしれません。
これは私に質問につながりました、ここでも適切な結びつきがありますか?そして、より大きな疑問は、いつ転位が適切であるか、そしていつ丸みのある穴に四角形のペグを挟み込んでトランジションを使用しているのでしょうか?
うん、私はそれを取得します。しかし、これはただの選択肢でした。この場合、私には複数の選択肢があります。別の言い方をすれば、もし私がtransclusionや入力変数を使って同じことを達成できるのであれば、2つの異なるアプローチを決める際に考慮すべき重要なことは何ですか? –
私は少し質問を明確にしようとしました。 –
これは移譲のための1つのユースケースですが、私の唯一の意味はありません。一般に、テンプレート本体に含めるために汎用HTMLを提供したい場合には、トランジションが便利です。 –