Javascript Redux configureStore(Redux工具包)中的扩展语法
我正在使用Javascript Redux configureStore(Redux工具包)中的扩展语法,javascript,reactjs,redux,redux-toolkit,Javascript,Reactjs,Redux,Redux Toolkit,我正在使用createreact应用程序--模板redux我想在configureStore reducer中使用扩展语法 像这样: 从'@reduxjs/toolkit'导入{configureStore}; 从“/a/slice”导入减速机; 从“/b/slice”导入数据转换器; 从“/c/slice”导入cReducer; 导出默认配置存储({ 减速器:{ a:阿雷杜克, b:布列多克, …教士 }, }); 在cReducer中,它与slice.js和utils.js一起位于自己的文
createreact应用程序--模板redux
我想在configureStore reducer
中使用扩展语法
像这样:
从'@reduxjs/toolkit'导入{configureStore};
从“/a/slice”导入减速机;
从“/b/slice”导入数据转换器;
从“/c/slice”导入cReducer;
导出默认配置存储({
减速器:{
a:阿雷杜克,
b:布列多克,
…教士
},
});
在cReducer
中,它与slice.js
和utils.js
一起位于自己的文件夹中,我有一些属性,我不想在存储中的单独对象中包含这些属性,但我希望它位于存储的根目录中
如何实现这一点?从ES2018(ES9)开始,您可以做到:
import cReducer from './c/slice';
const { dontWantThis, dontWantThis2, ...restOfcReducer } = cReducer;
export default configureStore({
reducer: {
a: aReducer,
b: bReducer,
...restOfcReducer
},
});
查看本文了解更多信息:从ES2018(ES9)开始,您可以执行以下操作:
import cReducer from './c/slice';
const { dontWantThis, dontWantThis2, ...restOfcReducer } = cReducer;
export default configureStore({
reducer: {
a: aReducer,
b: bReducer,
...restOfcReducer
},
});
查看本文了解更多信息:您的问题的意图不清楚。您在排列使用或如何组合存储对象方面有问题吗 以下是一些基于假设的解决方案:
configureStore
中查看属性prop1
和prop2
。只需引用它们并将它们添加到存储的根级别
import aReducer from './a/slice';
import bReducer from './b/slice';
import cReducer from './c/slice';
const {prop1, prop2} = cReducer;
export default configureStore({
reducer: {
a: aReducer,
b: bReducer,
},
prop1,
prop2,
});
reducer
对象中的
import aReducer from './a/slice';
import bReducer from './b/slice';
import cReducer from './c/slice';
const {prop1, prop2} = cReducer;
export default configureStore({
reducer: {
a: aReducer,
b: bReducer,
prop1,
prop2,
},
});
const {prop1, prop2} = cReducer;
export default configureStore({
reducer: {
a: aReducer,
b: bReducer,
},
c: prop1,
d: prop2,
});
注意:顺便说一句,如果您想在对象中也添加cReducer
,您也可以简单地添加它,就像您已经添加的那样
如果您希望添加cReducer
的道具子集,可以使用lodash
省略
函数组合一个新对象。看
并使用商店中没有的
导入器。您的问题的意图不清楚。您在排列使用或如何组合存储对象方面有问题吗
以下是一些基于假设的解决方案:
如果您想直接在configureStore
中查看属性prop1
和prop2
。只需引用它们并将它们添加到存储的根级别
import aReducer from './a/slice';
import bReducer from './b/slice';
import cReducer from './c/slice';
const {prop1, prop2} = cReducer;
export default configureStore({
reducer: {
a: aReducer,
b: bReducer,
},
prop1,
prop2,
});
如果根是指reducer
对象中的
import aReducer from './a/slice';
import bReducer from './b/slice';
import cReducer from './c/slice';
const {prop1, prop2} = cReducer;
export default configureStore({
reducer: {
a: aReducer,
b: bReducer,
prop1,
prop2,
},
});
您还可以将道具别名为:
const {prop1, prop2} = cReducer;
export default configureStore({
reducer: {
a: aReducer,
b: bReducer,
},
c: prop1,
d: prop2,
});
注意:顺便说一句,如果您想在对象中也添加cReducer
,您也可以简单地添加它,就像您已经添加的那样
如果您希望添加cReducer
的道具子集,可以使用lodash
省略
函数组合一个新对象。看
并使用商店中没有的creducer。没有“”。是的,你的东西怎么了?你能发布你的c/slice
文件吗没有“”。是的,你的东西怎么了?你能发布你的c/slice
文件吗。我根本没有在商店中获得restOfcReducer
对象。如果您使用的是最新的create react应用程序,它应该附带此功能。尝试使用npx create-react应用程序创建您的项目--模板重排
以确保使用最新的create react应用程序version@Zrna你不应该,你应该在你的商店里得到这个对象的属性,这是行不通的。我根本没有在商店中获得restOfcReducer
对象。如果您使用的是最新的create react应用程序,它应该附带此功能。尝试使用npx create-react应用程序创建您的项目--模板重排
以确保使用最新的create react应用程序version@Zrna你不应该,你应该在你的商店里得到这个对象的属性。