我正在使用一个 React / Redux 应用程序,由于某种原因,即使化简器函数已命名,该应用程序缩减器也会收到“导入/无匿名默认导出”警告。
userRedirect.js
import {SET_USER_REDIRECT} from "../actions/actionTypes";
const initialState = {
active: false,
title: '',
messages: [],
btnText: ''
};
const userRedirect = (state = initialState, action) => {
switch (action.type) {
case SET_USER_REDIRECT:
let newState = {...state};
newState = {...newState, ...action.payload.redirectData};
return newState;
default:
return state;
}
};
export default userRedirect;
此化简器正在导入到索引中.js该索引位于 userRedirect.js 所在的化简器文件夹中。然后,它使用 redux 中的 combineReducers 方法来处理化简器。
import {combineReducers} from 'redux';
import userData from './userData';
import userRedirect from './userRedirect';
export default combineReducers({
userData,
userRedirect
});
然后将其导入到存储文件夹的索引中,在此发生:
import {createStore, applyMiddleware} from "redux";
import thunk from 'redux-thunk';
import { composeWithDevTools } from 'redux-devtools-extension';
import rootReducer from "./../reducers";
export default createStore(rootReducer, composeWithDevTools(applyMiddleware(thunk)));
对我来说,似乎是插件出错了,但是我已经尝试了npm安装,我已经尝试了使用函数声明而不是表达式来创建userRedirect reducer,但是无论我做什么,它都一直显示警告,我也不知道为什么。
你们对此有什么想法或建议吗?我只是错过了什么吗?
非常感谢!
[导出默认组合Reducers({userData,userRedirect});
导出默认createStore(rootReducer,composeWithDevTools(applyMiddleware(thunk)));
这两个是匿名导出。
把它改成
const rootReducer = combineReducers({ userData, userRedirect });
导出默认rootReduce er;
const store = createStore(root reducer,composeWithDevTools(applyMiddleware(thunk)));
导出默认存储;
原谅我,如果不好看...从手机接听。无法从手机格式化