React挂钩:“ TypeError:对象不是函数”

时间:2020-04-26 13:24:10

标签: javascript reactjs react-hooks

我正在使用React版本16.13.1。

我收到“ TypeError:对象不是函数”

这是我的代码(错误消息似乎认为第7行有问题):

import React, { useState } from 'react';
import fb from '../config/firebase';
import ProcessInput from './customHooks/processInput';

const DashBoard = ({ level, newUser }) => {

  const [val, bind] = ProcessInput('');

  const handleChange = (e) => {
    e.preventDefault();
  }

这是我的自定义钩子:

import { useState } from 'react';

export const ProcessInput = value => {
  const [val, setVal] = useState(value);

  return {
    val,
    setVal,
    bind: {
      val,
      onChange: event => {
        setVal(event.target.value);
      }
    }
  };
};

在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

ProcessInput返回一个对象,但是您正在将其分解为数组。

尝试一下:

const {val, bind} = ProcessInput('');