Как использовать оператор распространения?

#reactjs

#reactjs

Вопрос:

Я работаю над React JS. Я пытаюсь использовать оператор распространения здесь. Ниже приведен мой код.

 const parametersQuickStoreSearch = (searchTerms, options, store) => {
}
  

В приведенном выше коде значение searchTerms равно simsKeycode:"35431081" , а значение хранилища равно {value:all,label:all} . Я хочу объединить значение searchTerms и сохранить, как показано ниже.

 { simsKeycode:"35431081", store: store.value }
  

Я попробовал, как показано ниже

 const storeParam = {
    'store': store.value,
}
  

Эта строка выдает мне ошибку Unnecessarily quoted property 'store' found
Может ли кто-нибудь помочь мне завершить это? Будем признательны за любую помощь.

Ответ №1:

Ниже приведен пример :

 const person = { name: 'David Walsh', gender: 'Male' };
const tools = { computer: 'Mac', editor: 'Atom' };

const summary = {...person, ...tools};
/*
Object {
  "computer": "Mac",
  "editor": "Atom",
  "gender": "Male",
  "name": "David Walsh",
}
*/
  

Комментарии:

1. Я добавил const storeParam = { store: store.value, }; затем const newSearchTerms = {…searchTerms, …storeParam}; но мои newSearchTerms имеют только значение searchTemrs

Ответ №2:

Вы можете попробовать Object.assign

 var searchTerms = {"simsKeycode":"35431081"}
var store = {"value":"all","label":"all"}
Object.assign({}, searchTerms, {store:store.value})
  

или оператор распространения

 var searchTerms = {"simsKeycode":"35431081"}
var store = {"value":"all","label":"all"}
var storeParam = {store:store.value}
{...searchTerms, ...storeParam}
  

вывод:

 "{"simsKeycode":"35431081","store":"all"}"
  

Комментарии:

1. Спасибо, но мой вывод должен быть { simsKeycode:»35431081″, store: store.value }

2. В этом случае вывод { simsKeycode:»35431081″, store: «all» }?