問題タブ [ngfor]

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.

0 投票する
2 に答える
16950 参照

angular - ※NgForはデータを表示しません

初めて Angular2 アプリケーションを作成しています。

BankAccountServiceバックエンド サーバーからデータをフェッチする と、このbank-account.componentサービスを使用して単に accountNumbers の並べ替えられていないリストを表示する があります。

chrome devtool を使用してデバッグすると、データが正しくフェッチされ、bankAccountsデータ メンバーに格納されていることがわかりましたが、何らかの理由でul何も表示されません。

BankAccountService:

bank-account.component:

誰かが光を当てることができれば本当にありがたいです、私は私の間違いを理解できないようです.

前もって感謝します

0 投票する
2 に答える
3868 参照

javascript - ngFor の外で *ngFor 現在のオブジェクトを使用するにはどうすればよいですか?

タイトルは奇妙に思えるかもしれませんが、私が話しているのは基本的にこのリンクが行っていることです。

スコープ外で現在の反復personを使用する方法を探しています。<tr>*ngFor

ng-repeat-start彼が使用したリンクでは、ng-repeat-endAngular2ng-repeat.を使用して同じ動作を実現するにはどうすればよい*ngForですか?

0 投票する
1 に答える
908 参照

angular - *ngFor 内での Angular 2 の変更検出が機能しないようです (RC5)

私の ng2 モジュール内では、別のモジュールによって関数が呼び出され、オブジェクトが作成され、それがテンプレートの *ngFor にバインドされた配列にプッシュされます。ドキュメントhttps://angular.io/docs/ts/latest/api/common/index/NgFor-directive.htmlによると、変更を自動的に検出する必要があります。配列をコンソールログに記録できますが、すべてがそこにありますが、セレクタータグは空のままです。テストとして静的配列を使用すると、機能します。ここと他のサイトの一見類似した質問とドキュメントの ChangeDetectorRef をすべて調べましたが、見つかったのは数か月前のもので、試してみるとエラーが発生しました。

これは、marker.component.html です。

そしてこれはmarker.component.tsです:

静的に書き込まれた「トークン」が表示され、期待どおりに機能しますが、新しく追加されたものはありません。

0 投票する
1 に答える
8366 参照

templates - Angular 2 * ngFor表示コンポーネントテンプレートが機能しない

「results.component.ts」にこのコレクションがあります。 results: Result[]

コレクションを反復処理して、各結果を表示したいと思います。

これには、result.component.ts という別のコンポーネントが必要です。これは、結果が複雑で大きくなる可能性があるためです。

これまでのところ、何も表示されていません。出力 html には、コメント化されたテンプレート バインディングがいくつかあります。

これが私の関連コードです:

results.component.html:

results.component.ts:

結果.component.html:

結果.コンポーネント.ts:

1 つの結果の結果データを results.component から result.component に渡すにはどうすればよいですか。

result.component.html を結果ごとに 1 回表示するにはどうすればよいですか?

0 投票する
1 に答える
201 参照

node.js - Angular 2: キャッチされないエラー: 不正な HTML 属性名: *ngfor

meteor 内で angular 2 を実行しています。私はそれに関するチュートリアルに従ってきましたが、このステップで立ち往生しています:

http://www.angular-meteor.com/tutorials/socially/angular2/dynamic-template

すべての angular & angular2-meteor npm パッケージが node_modules ディレクトリにインストールされているため、 *ngfor を参照する app.component.html ファイルがそのエラーをスローする理由がわかりません。ここに私のpackage.jsonファイルがあります:

app.component.html は次のとおりです。

app.component.ts は次のとおりです。

ここに私のindex.htmlがあります:

ここに私のmain.tsがあります:

コンソール出力:

ここに画像の説明を入力

私のファイルはチュートリアルと正確に一致していると思いますが、明らかに何かが見えていないだけかもしれません...

更新 1: node_modules ディレクトリを削除して meteor npm install を再実行し、チュートリアルの git リポジトリから client フォルダー内のすべてのファイル コンテンツを再コピーしましたが、まだ機能しません。*ngFor タグをまだ認識していないため、流星プロジェクトが角度を認識していないか、ノードのインストールと OS ブラウザーのコンボが認識されていない可能性があります。Chrome を使用して Windows 7 を使用しています。ノード バージョン: v6.3.1

更新 2: @neeraj が最初に解決する必要があると述べた可能性があると思います。meteor は HTML ファイルのコンテンツを「マスター」HTML ファイルに追加するため、head タグと body タグは必要ないため、これは正しいと思います。ただし、app.componentl ファイルで head タグと body タグを省略すると、次のエラーがスローされます。

0 投票する
3 に答える
11794 参照

arrays - Angular2 *ngFor: "未定義のプロパティ '0' を読み取れません"

JSON ファイルからデータを取得してフォームを作成しようとしています。

これが私のテンプレートの一部です:

リモート JSON ファイルの一部を次に示します。

それは問題なく動作しnewbie、メニューに他の選択肢がありselectます。しかし、場所をループしたいので、html テンプレートを次のように編集します。

JSONファイルからデータを取得するために使用するサービスは次のとおりです。

そしてここにあるhero.component

しかし、「未定義のプロパティ '0' を読み取れません」というエラーが表示されます。

なんで?

0 投票する
1 に答える
1163 参照

angularjs - ngFor が angular 2 で動作せず、空白のページが表示される

私はYouTubeのビデオを見て、このリンクのビデオとまったく同じようにしようとしましたhttps://www.youtube.com/watch?v=bKWDKmHvF78&index=8&list=PL6gx4Cwl9DGBYxWxJtLi8c6PGjNKGYGZZしかし、ngForはまったく機能しません。ngFor で書くと、空白のページが表示されます。

//app.component.ts

//app.component.html

//main.ts

//playlist.component.html

//playlist.component.ts

0 投票する
2 に答える
1718 参照

javascript - Angular2子コンポーネントがngForで予期せず破壊されました

@Outputしたがって、次のように、送信時にトリガーされるイベントを持つ from のこのコンポーネントがあります。

を使用してngFor、この Component の複数の要素を作成しています:

最後の欠落部分は、送信時に使用されるサービスです。

submitForm()関数の先頭でthis.onSubmit.observersは、本来あるべき 1 つのオブザーバーを含む配列です。

this.onSubmit.emit()が呼び出されるコールバック メソッドに到達するとすぐに、this.onSubmit.observersはゼロのオブザーバーを含む配列になります。

2 つの非常に奇妙な動作が発生しています。

  • バックエンドを更新する実際の呼び出しを削除するSomeService.updateBackendと、完全に正常に動作し、observersまだ 1 つのオブザーバーを含む配列です!
  • バックエンドへの実際の呼び出しを保持するが、使用せずにngFor1 つだけを表示する<some-element>場合も、完全に正常に動作し、1 つのオブザーバーをthis.onSubmit.observersコールバック スコープ内に保持します!

私は何が間違っているのですか?

前もって感謝します!

アップデート:

のログ記録に関する @StevenLuke のコメントのおかげで、出力前に破棄されていることngOnDestroySomeComponentわかりました。

実際、終了時に最初に行うことはSomeService.updateBackend、このコンポーネントのすべてのインスタンスを破棄して再作成することです!

これがオブザーバーを変えるものです!なぜそれが起こるのでしょうか?

0 投票する
1 に答える
135 参照

angular - ngForによって生成されたローカル変数の配列を取得するには? もし可能なら

次のコードは、すべてのローカル変数を作成します<div>よね?

もしそうなら、どうすればの配列を取得でき<div>ますか?