【发布时间】:2020-03-07 23:14:21
【问题描述】:
我需要做一个动态动作。换句话说,它可以重复用于不同的操作。
我试图创建一个加载类型和有效负载的函数,但出现错误。
我正在尝试使此功能起作用:
export function getData(url, type) {
const request = Server.get(url)
return (dispatch) =>
request.then((response) => {
dispatch({
type: type,
payload: response.data
})
}).catch(function (error) {
console.log(error)
});
}
但是当我以这种方式调用此函数时出现错误:
export function getClientes() {
Actions.getData('ClientesEFornecedores', GET_CLIENTES)
}
它正在显示:
Uncaught Error: Actions must be plain objects. Use custom middleware for async actions.
我这样调用 getClientes() 函数:
function ClientesTable(props)
{
const dispatch = useDispatch();
const clientes = useSelector(({erpCliente}) => erpCliente.clientes.data);
useEffect(() => {
dispatch(Actions.getClientes());
}, [dispatch]);
我怎样才能使动作可重用?
【问题讨论】:
标签: javascript reactjs ecmascript-6 react-redux