2017-07-27 5 views
2

は私のコードです:破壊されたオブジェクトに名前を付けるには?ここ

const { tourId, title, startLocation,endLocation, details: {days}} = info; 

と私は

<BookingHeader tourId={tourId} title={title} startLocation={startLocation} endLocation={endLocation} days={days}/> 

それを使用してどのように私は破壊オブジェクト(bookingHeaderProps)に名前を付けたいので、理想的に、私は

<BookingHeader {...bookingHeaderProps}/> 
ようにそれを使用しました

誰も破壊されたオブジェクトに名前を付ける方法を知っていますか?

+4

破壊はオブジェクトをまったく作成しませんが、一連の変数を作成します。オブジェクトを渡す場合は、手動で行う必要があります。 – loganfsmyth

+0

オブジェクトからいくつかのプロパティを選択または削除するには、対応するヘルパーを定義するか、 'lodash'から' pick'および 'omit'関数を使用します。 –

答えて

0

"{... this.props}"という名前は必要ありませんが、名前を付けたい場合は、自分でオブジェクトを再構築し、それを小道具として渡すことができます。あなたは

const { a, b } = c; 

をdestructureとき

+0

理由は情報オブジェクトが多くのプロパティを持っているため、使用したくない追加のプロパティを渡したくないからです。 –

0

あなたが名前を付けることができます»1つのオブジェクト«を得ることはありません。代わりにという2つのローカル変数を作成しました。abは、今度はとなります。です。

const bookingHeaderProps = { tourId, title, startLocation, endLocation, days }; 

をして、それは同様にサポートする必要があるので、上記のステップは、short-hand property names (ES2015)に依存している

<BookingHeader {...bookingHeaderProps} /> 

を使用する:あなたはこのよう再び組み合わせ(と命名)オブジェクトのキーとしてそれらを組み合わせることができます。

関連する問題