如何解决开玩笑无法在mapStateToProps中进行分解
我的组件正在运行,并且达到了预期的结果。但是在进行测试时,由于解构失败而失败。
错误:无法解构“ state.employeeLeave”的属性“ leaveTypes”,因为该属性未定义
function mapStateToProps(state) {
const { leaveTypes } = state.employeeLeave; // works well in browser but fails in unit test
return {
leaveTypes
}
}
//initial state
export const leaveInitialState = {
leaveTypes: []
};
//reducer
import { actionConstants } from '../../constants/actionConstants';
import { leaveInitialState } from '../config/initialState';
export default function employeeLeaveReducer(state = leaveInitialState,action) {
switch (action.type) {
case actionConstants.LEAVE_TYPES:
return { ...state,leaveTypes: action.payload.response };
default:
return state;
}
}
//combined reducer
import { combineReducers } from 'redux';
import login from './login';
import employeeLeave from './employeeLeave';
export default combineReducers({
login,employeeLeave
});
//my test file
test('Leaveform',() => {
const component = renderer.create(
<MemoryRouter
initialEntries={[{ pathname: '/',key: 'testKey',state: {} }]}
>
<Provider store={store}>
<LeaveForm />
</Provider>
</MemoryRouter>);
let tree = component.toJSON();
expect(tree).toMatchSnapshot();
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。