【发布时间】:2018-11-16 15:20:19
【问题描述】:
当我想调度一个动作时,我遇到了一个 TypeError(TypeError: Object(...) is not a function)。我没有使用任何中间件,也不知道我能做些什么来解决它。我昨天已经遇到了这个错误,但不知何故设法解决了它(我不知道我是怎么做到的)
这是 App.js:
import React from "react";
import { store } from "../store";
import { withdrawMoney} from "../actions";
const App = () => {
return (
<div className="app">
<div className="card">
<div className="card-header">
Welcome to your bank account
</div>
<div className="card-body">
<h1>Hello, {store.getState().name}!</h1>
<ul className="list-group">
<li className="list-group-item">
<h4>Your total amount:</h4>
{store.getState().balance}
</li>
</ul>
<button className="btn btn-primary card-link" data-amount="5000" onClick={dispatchBtnAction}>Withdraw $5,000</button>
<button className="btn btn-primary card-link" data-amount="10000" onClick={dispatchBtnAction}>Witdhraw $10,000</button>
</div>
</div>
</div>
);
}
function dispatchBtnAction(e) {
store.dispatch(withdrawMoney(e.target.dataset.amount));
}
export default App;
这里是动作创建者:
function withdrawMoney(amount) {
return {
type: "ADD_TODO",
amount
}
}
如果你需要这里是reducer:
export default (state, action) => {
console.log(action);
return state
}
如您所见,我是 redux 的新手,但我想知道我在调度操作时总是犯什么错误。谢谢
【问题讨论】:
-
对我来说,connect的import是错误的。我已经从 mongoose 导入了连接(自动导入扩展导致这个问题)
标签: redux