角度を使用して基本的な表示/非表示機能を作成しましたが、より洗練されたソリューションが必要なように感じられます。ここで 角度4のクリックで表示/非表示
は私の現在のコードでplnkrです: http://plnkr.co/edit/Q8NfhTL25Y8gOoGMXiP2?p=previewHTML:
<div class="container">
<label>
<input class="pvq-create-checkbox" type="checkbox" name="" value="" (click)='question1()'>
<div class="pvq-create-label">
<p>Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh?</p>
</div>
</label>
<label [@hideShow]='state1'>Answer
<input type="textbox" name="">
</label>
</div>
ロジック:あなたはこのようなためanimations
DSLを使用することにより、オーバーエンジニアリングされている
state1: string = 'inactive';
state2: string = 'inactive';
question1() {
this.state1 = (this.state1 === 'inactive' ? 'active' : 'inactive');
}
question2() {
this.state2 = (this.state2 === 'inactive' ? 'active' : 'inactive');
}
フォームを使用した別の方法は次のとおりです。http://plnkr.co/edit/pemDTePMm8hY1lJ3Nwfi?p=preview私はアニメーションについてよく分かりませんが、私が恐れているのは問題になるのは、非表示のときでも答えテキストボックスがDOMに残っているため、バリデータがまだ適用されているということです。 –
私はAngularをかなり新しくしています。あなたの目標は、私が達成したいと考えているベストプラクティスですか?あなたが同じ結果を達成しようとしていて最初から始めようとしているのなら、これはあなたがやることでしょうか? – Dachan
私はそれに答えるのに十分なアニメーションを知らない。しかし、確かにあなたはチェックボックスと入力フィールドの値が何であるかを知る必要があるので、フォームとバインディングが必要です。 –