84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
フロントエンドの Angular アプリがあり、特定のテキストエリアにフォーカスを設定し、カーソルを点滅させて、ロード時にユーザーがテキストエリアに入力できるようにしたいと考えています。
グーグルで調べてみたところ、@ViewChild が正しい選択かもしれないと思いました。しかし、これまでのところ、私はそれを機能させることができました。
これは私のスタンドアロン ts ファイル全体です:
最初に、正しいオプションを @ViewChild に渡すことです:
@ViewChild
そうしないと、dom ノードの代わりにコンポーネント インスタンスが取得されます。
*ngIf/*ngFor のような構造ディレクティブがない場合は、 {static: true, read: ElementRef} を渡すこともできます。これにより、elementRef が ngOnInit で使用可能になります 、それ以外の場合は AfterViewInit
{static: true, read: ElementRef}
ngOnInit で使用可能になります
AfterViewInit
nativeElement がまだ DOM にないため、コードは機能しないと思います。 以下は動作します (コンソール (test1) では、ngAfterViewInit の先頭でnativeElementがnullであることがわかります)。おそらく 1000 ミリ秒を追加する必要があります:
}
ここでは、NativeElement が DOM に表示されるのを待機するより決定的な方法 (setTimeout よりも) を説明します。 要素が存在するのを関数に待機させる
最初に、正しいオプションを
リーリー@ViewChild
に渡すことです:そうしないと、dom ノードの代わりにコンポーネント インスタンスが取得されます。
*ngIf/*ngFor のような構造ディレクティブがない場合は、
を使用する必要があります{static: true, read: ElementRef}
を渡すこともできます。これにより、elementRef がngOnInit で使用可能になります
、それ以外の場合はAfterViewInit
nativeElement がまだ DOM にないため、コードは機能しないと思います。 以下は動作します (コンソール (test1) では、ngAfterViewInit の先頭でnativeElementがnullであることがわかります)。おそらく 1000 ミリ秒を追加する必要があります:
リーリー}
ここでは、NativeElement が DOM に表示されるのを待機するより決定的な方法 (setTimeout よりも) を説明します。 要素が存在するのを関数に待機させる