首页 > 解决方案 > 在类组件上无法识别 React 的 PropTypes 导入

问题描述

我已经通过 npm 模块安装了 PropTypes,下面是代码的简化版本。有谁知道为什么我不能在我的班级上访问 .propType ?

import React from 'react';
import PropTypes from 'prop-types';
import { DataGrid } from 'devextreme-react';

class MyComponent extends React.Component {
    constructor(props: { dataSource?: any[] }) {
        super(props);
    }

    render(): JSX.Element {
        return (
            <DataGrid dataSource={[]}>
            </DataGrid>
        );
    }
}

MyComponent.propTypes = {
    dataSource: PropTypes.array
};

export default MyComponent;

在此处输入图像描述

标签: reactjsvisual-studio-codereact-proptypestsx

解决方案


我确定您的代码很好,只需重新启动您的 vscode。有时候是这样的。

您可以使用以下内容检查 propTypes 是否正常工作:

MyComponent.propTypes = {
    dataSource: PropTypes.array,
    testError: 1
};

您将在控制台中收到一条消息

Warning: Failed prop type: MyComponent: prop type `testErrors` is invalid; it must be a function, usually from the `prop-types` package, but received `number`.
    in MyComponent (created by App)
    in App

https://stackblitz.com/edit/react-ts-koxotz?file=MyComponent.tsx


推荐阅读