首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TypeError时使用React useReducer

TypeError时使用React useReducer
EN

Stack Overflow用户
提问于 2018-11-21 04:47:59
回答 1查看 3K关注 0票数 0

我尝试使用react (UseReducer)。我搞错了

TypeError:对象(.)不是一个函数

这里我附加了我的代码和错误截图。

代码语言:javascript
复制
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>
    );
}]

如何修复此错误。

EN

回答 1

Stack Overflow用户

发布于 2018-11-21 04:56:11

错误不是useReducer,但您错误地使用了导出缺省值:

代码语言:javascript
复制
export default function myCom(){

如果要导出命名函数,则可以:

代码语言:javascript
复制
// function definition
function myComp() {}
// then export
export default { myComp }

然后,您可以使用例如:

代码语言:javascript
复制
import Something from '...'
Something.myComp()

但是,如果您只想导出一个函数,那么我将这样做:

代码语言:javascript
复制
export const myComp = () => {}

现在,您可以导入以下内容:

代码语言:javascript
复制
import { myComp } from '...'
myComp()
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53405417

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档