
我尝试使用react (UseReducer)。我搞错了
TypeError:对象(.)不是一个函数
这里我附加了我的代码和错误截图。
import React, { useReducer } from 'react';
function appReducer(state, action){
switch(action.type){
case 'add':
return [
...state,
{
id:Date.now(),
text:'',
completed:false
}
]
break;
default:
break;
}
}
export default function myCom(){
const [state, dispatch] = useReducer(appReducer, []);
return (
<div className="App">
<h5>React ToDo</h5>
<button onClick={() => dispatch({type:'add'})}>New Todo</button>
{
state.map(item =>(
<div key={item.id}>{item.id}</div>
))
}
</div>
);
}]如何修复此错误。
发布于 2018-11-21 04:56:11
错误不是useReducer,但您错误地使用了导出缺省值:
export default function myCom(){如果要导出命名函数,则可以:
// function definition
function myComp() {}
// then export
export default { myComp }然后,您可以使用例如:
import Something from '...'
Something.myComp()但是,如果您只想导出一个函数,那么我将这样做:
export const myComp = () => {}现在,您可以导入以下内容:
import { myComp } from '...'
myComp()https://stackoverflow.com/questions/53405417
复制相似问题