問題タブ [angular8]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angular - V8 にアップグレードした後、@ViewChild('tTaskTeam', { read: MatAutocompleteTrigger }) が機能しない
こんにちは、今夜、プロジェクトを V7 から V8 にアップグレードしましたが、@viewChild の読み取り中に大量のエラーが発生しました。これは、彼らが行った新しい更新が原因でした。すべての @viewChild に { static: true } を追加しましたが、次のように設定したこれらのトリガーに出くわしました。
は 2 つのviewChild
パラメーターのみを受け入れ、3 つを追加することはできません。だから私は read: MatautocompleteTrigger
out を取り、私が行っていたオートコンプリート機能を壊しました。
これは私が得ているエラーメッセージです:
タイプ '{ read: typeof MatAutocompleteTrigger; の引数。}' は型 '{ read?: any; のパラメーターに代入できません。静的: ブール値; }'。タイプ '{ read: typeof MatAutocompleteTrigger; にプロパティ 'static' がありません。}' ですが、タイプ '{ read?: any; では必須です。静的: ブール値; }'.ts(2345) core.d.ts(8066, 9): 'static' がここで宣言されています。
これらのトリガーを、ユーザーが選択したオプション リストにない文字を入力した場合にトリガーするように追加しました。そのため、クリアされ、ユーザーに再度選択するようメッセージが表示されます。
これは完全な実装です: HTML
TS
html - Angular Material: mat-sidenav を使用すると、未定義のプロパティ 'toggle' を読み取ることができません
同じコンポーネントのボタンを介して sidenav を切り替えることができない Angular Material 8 を使用した Angular 8 プロジェクトがあります。JavaScriptコンソールはそれを言います
未定義のプロパティ「トグル」を読み取ることができません
ただし、sidenav にはテンプレートに参照変数があります。
ボタンがテンプレートにあることを確認したので、イベント エミッターやその他の策略について心配する必要はありません。これは簡単です。
HTML
メニュー ボタンはブレークポイントで期待どおりに表示されたり消えたりしますが、クリックするとエラーが発生します。
何が起こるかというと、ボタンはブレークの下にあるときにのみ表示されisHandset$
(発生します)、コンテンツの上で開く必要があります (発生しません)。#sidenav
参照変数はタグにあるので、mat-sidenav
適切に設定されているようです。
angular - @Input を FormControl として定義するには?
次のコンポーネントがあります。
そして今、私はメンバーを変換したいと思っていuserInput
ます (私は常に入力バインディングをオプションにします。使用されない可能性があるためです) FormControl
。
または、これは何らかの方法でバインディングメカニズムと競合しますか? 型に関しては、これは良い習慣でuserInput
はないようstring
です。
私の質問
@Input
プロパティにバインディングを割り当てるにはどうすればよいFormControl
ですか?
提案
次のように onInit に (おそらく) バインドされた値を割り当てる必要があるかもしれません。