gpt4 book ai didi

javascript - Redux - 商店不起作用

转载 作者:行者123 更新时间:2023-11-28 05:45:52 25 4
gpt4 key购买 nike

我是 Javascript 和 Redux 的新手,我刚刚基于此 tutorial 创建了我的第一个应用程序。我有一个问题,商店绝对不会对任何调度调用使用react。不知道Redux和React的连接有问题还是store配置本身有问题。

你能帮我解决这个问题吗?

这是我的操作文件中的片段,其中定义了“addTodo”操作。

export const ADD_TODO = 'ADD_TODO';


let todoId = 0;

export const addTodo = (text) => ({
type: ADD_TODO,
id: todoId++,
text,
});

以下是我的商店配置。

import { createStore, applyMiddleware, compose } from 'redux';
import rootReducer from '../reducers';
import DevTools from '../containers/DevTools';

const enhancer = compose(
applyMiddleware(createLogger),
DevTools.instrument()
);

export default function configureStore(initialState) {
const store = createStore(rootReducer, initialState, enhancer);

if (module.hot) {
module.hot.accept('../reducers', () => {
const nextRootReducer = require('../reducers').default;
store.replaceReducer(nextRootReducer);
});
}

return store;
}
我的索引文件,我尝试使用“AddTodo”操作创建器调用调度函数。同样,我在 Redux 容器中调用此函数,但它不适用于两者。

import React from 'react';
import { render } from 'react-dom';

import configureStore from './store/configureStore';

import { addTodo } from './actions';

const store = configureStore();

store.subscribe(() =>
console.log(store.getState())
);

store.dispatch(addTodo('test'));

整个项目放在 Github也。如果您帮助我,我将不胜感激。

最佳答案

您忘记调用createLogger,请尝试

const enhancer = compose(
applyMiddleware(createLogger())
...
);

<强> webpackbin test

关于javascript - Redux - 商店不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38531807/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com