を(私は「解析エラー」を取得しています)私のコードは次のようになります。Redux Reducer - この状態をオブジェクトとして保存するにはどうしたらいいですか?
import { SAVE_SEARCH } from '../actions/index';
export default function (state = [], action) {
switch (action.type) {
case SAVE_SEARCH:
return [...state, action.payloadTwo, action.payloadOne];
default:
return state;
}
}
そして私は私の状態でこのような結果を得ている:それは作品
が、この配列です。
case SAVE_SEARCH:
return [...state, { action.payloadTwo: action.payloadOne }];
のでSEARCHTERMは、オブジェクトのキーとなり、データがオブジェクトキー値として保存されます:私はそうのように、オブジェクトに変更したいです。
私はそれはあなたのために明らかである知っています。なぜ私はこれをこのようにコード化できないのですか?なぜ私は "解析エラー"を得ているのですか?
---------------
EDIT:彼の答えのために@marekfulする
多くの感謝!今それは動作します!
マイaction.jsコード:
import axios from 'axios';
export const SAVE_SEARCH = 'SAVE_SEARCH';
export function searchTest(query) {
const githubApi = `https://api.github.com/search/repositories?q=${query}&sort=stars&order=desc`;
const request = axios.get(githubApi);
return (dispatch) => {
request.then(({ data: dataFromGithub }) => {
dispatch({ type: SAVE_SEARCH, payloadOne: query, payloadTwo: dataFromGithub });
});
};
}
減速コード:
import { SAVE_SEARCH } from '../actions/index';
export default function (state = [], action) {
switch (action.type) {
case SAVE_SEARCH:
const o = {};
o[action.payloadOne] = action.payloadTwo;
return [...state, o];
default:
return state;
}
}
結果:オブジェクトリテラルで
** **プロパティ名の** **プロパティ名 –