に移動したときに私はこのようなコースのコンポーネントを開始アプリ持っていた作業:配列はもちろんのフォームから移入されたローカルストレージから引き出さから送信し、角度2 * ngForとフォーム提出しなくなった観測
<li *ngFor="let course of courses">
<app-course [appCourse]="course"
(remove)="removeItem($event)"
></app-course>
</li>
を
{
"_id": "587f52ad266c32fbfb10f21a",
"end": "31/1/2017",
"start": "1/1/2017",
"desc": "see title",
"name": "Intro To Express",
"id": 1,
"__v": 0,
"updated_at": "2017-01-18T11:34:05.416Z"
}
次に、私は観測可能なものをバックエンドに追加しました。今、フォームはオブジェクトを送信します、私はそれが正しい形であることをログに記録するかどうかを見ることができます。
そして、それは、バックエンドを管理するサービスにプッシュ仲介サービス、に行く:
addItem(course) {
this.storage.post(course).subscribe((data: any) =>
{console.log(JSON.stringify(data)); return (data); }, error =>
{console.log(error)});; }
私は私のメインコンポーネントからサービスへのそれを押してると、私はまだオブジェクトを見ることができます()にconsole.logを持つ:
{"name":"test","id":"1234","desc":"test","start":"2017-01-30","end":"2017-02-03"}
しかし、それは実際にデータベースになったときに、フォームのフィールドのいずれもが存在しない:
{
"_id": "588f251bff96fa0004e0c2cd",
"__v": 0,
"updated_at": "2017-01-30T11:35:55.567Z"
}"
また、配列はまだ戻ってきます。console.log()で見ることができますが、ngForはコンポーネントを起動しなくなりました。
エラーはありません。
どうすればよいですか?
コースリストはセッション間で持続する必要がありますか?なぜローカルストレージの代わりにデータを保持するためにサービスを使用しないのですか? –
フィールドが実際にフォームコンポーネントにバインドされていることを確認します。 –
ベン - ローカルストレージを使用していません。スタンドアローンのExpress/Mongoバックエンドに接続されたサービスを使用しています。これは、これらのオブジェクトがどこから来ているかです。 –