2017-11-13 17 views
0

私はアンゲ4の初心者で、フォームビルダを使用します。ngSubmitフォームフィールドのデータを含むオブジェクトを作成しています。しかし、そのオブジェクトをペイロードとして渡す前に、フォームオブジェクト内に別のオブジェクトと配列を追加する必要があります。私は頭を悩ましていますが、それを達成できませんでした。既存のオブジェクトにオブジェクトや配列を追加する方法

下記の通りです。は、フォームビルダーから取得しているオブジェクトです。 および。最終的なオブジェクトが予想され、フォームビルダオブジェクトを作成した後にオブジェクトに「childrenCustomerIds」と「properties」をそれぞれ追加する必要がありますが、追加する手がかりがありません。

助けていただければ幸いです。

ありがとうございます!!!

{ 
    "address": "string", 
    "customerId": "BGroup", 
    "email": "[email protected]", 
    "name": "Testing", 
    "parentCustomerId": "myCustomerId3", 
    "phoneNumber": "1111111111", 
    "primaryContactUserId": "primaryContactUserId", 
    "status": "ACTIVE", 
    "xylemPrimaryContactId": "testing" 
} 

{ 
    "address": "string", 
    "childrenCustomerIds": ["testing"], 
    "customerId": "BGroup", 
    "email": "[email protected]", 
    "name": "Testing", 
    "parentCustomerId": "myCustomerId3", 
    "phoneNumber": "1111111111", 
    "primaryContactUserId": "primaryContactUserId", 
    "properties": {}, 
    "status": "ACTIVE", 
    "xylemPrimaryContactId": "testing" 
} 
+0

フォームを作成するためのコードを投稿できますか? – Pilatus

+0

これらのフィールドをフォームに追加する必要がありますか、またはフォームを送信した後に追加する必要がありますか?それは少し不明です... – Alex

答えて

1
var obj={ 
    "address": "string", 
    "customerId": "BGroup", 
    "email": "[email protected]", 
    "name": "Testing", 
    "parentCustomerId": "myCustomerId3", 
    "phoneNumber": "1111111111", 
    "primaryContactUserId": "primaryContactUserId", 
    "status": "ACTIVE", 
    "xylemPrimaryContactId": "testing" 
} 

追加 "childrenCustomerIds":[ "テスト"]

Object.assign(obj, {"childrenCustomerIds": ["testing"]}); 

同様に「プロパティ」を追加できます:{}

Object.assign(obj, {"properties": {}}); 
+0

しかし、私はこのアプローチはES5のアプローチだと思うが、私はES6/Typescriptには私が完全に理解することができないインターフェイスの概念があることがわかりました。 ES6/Typescriptソリューションがあれば本当に感謝しています。 –

+0

Object.assign()はES6/Typescript機能のみです クローンインターフェイスなどの詳細については、こちらをご覧ください https://stackoverflow.com/questions/22885995/how-do-i-initialize-a -typescript-object-with-json-object –

関連する問題