无法从PropTypes获取功能

时间:2018-10-09 00:31:43

标签: reactjs typescript material-ui react-proptypes

我无法弄清楚为什么此导入或其他导入无效:

    import * as React from 'react';
    import TextField from '@material-ui/core/TextField';
    import * as PropTypes from 'prop-types';
    import { withStyles } from '@material-ui/core/styles';
    //import { PropTypes } from '@material-ui/core';

    interface IProps {
        value: string;
        onChange?: PropTypes.func;
    }

    const textField = (props: IProps) => {
        return (
            <div>HI</div>
        );
    };

    export default textField;

我收到的错误是:

ts-app / node_modules / @ types / prop-types / index“'没有导出的成员'func'

我正在查找此文件,并且显然有这样一个成员:

export const func: Requireable<(...args: any[]) => any>;

也许有一天我会了解React以及这些依赖项如何工作,谢谢!

2 个答案:

答案 0 :(得分:1)

$("name='submit'").on("click", function(e){ e.preventDefault(); $("#myForm").submit(); }); 是一个值(打算在无状态函数组件的PropTypes.func属性或组件类的静态属性中使用),但是您试图将其用作类型。相反,您可以手动编写基础类型:

propTypes

或者希望是更适合您的应用程序的

filed an issue输入错误消息。

答案 1 :(得分:0)

尝试一下

import PropTypes from 'prop-types';

原因是这种语法:

import * as PropTypes from 'prop-types';

正在请求一个具有所有prop-types命名出口的对象。

但是,这不是prop-types包的构造方式。我们必须使用以下语法:

import PropTypes from 'prop-types';

要求默认导出prop-typesprop-types包实际上使用default export语法。

有关更多信息:Difference between import X and import * as X in node.js (ES6 / Babel)?