我收到此错误
动作可能没有未定义的“类型”属性。你拼错了常量吗?
这是我的代码 https://codesandbox.io/s/50l75oqnyx
问题在这一行的index.js 行号:12
store.dispatch(testAction('StackOverflow'));
我正在尝试从外部调度动作
答案 0 :(得分:1)
由于错误提示,在分派type
中没有的操作时,应指定一个testAction
属性。将您的action
密钥更改为type
,它将起作用
export function testAction(text) {
console.log(text);
console.log("ddddd");
return {
type: Actions.SET_IMAGE,
text
};
}
答案 1 :(得分:0)
在abc.actions.js
下的返回对象中,您应该返回一个对象,该对象的属性为“ type”,然后返回要执行的动作。但是您不是在定义类型,而是在定义action:Actions.SET_IMAGE
的正确方法是type: Actions.SET_IMAGE
。
export function testAction(text) {
console.log(text);
console.log("ddddd");
return {
type: Actions.SET_IMAGE,
text
};
}
答案 2 :(得分:0)
您在 acb.action.js 处执行的操作不包含type
export function testAction(text) {
console.log(text);
console.log("ddddd");
return {
action: Actions.SET_IMAGE,
text
};
}
,而您的减速器将采用payload
(abc.reducer.js第12行)而不是text
,因此应更改为
export function testAction(text) {
console.log(text);
console.log("ddddd");
return {
type: Actions.SET_IMAGE,
payload: text
};
}