📌  相关文章
📜  ReferenceError:找不到变量:PropTypes (1)

📅  最后修改于: 2023-12-03 15:34:42.347000             🧑  作者: Mango

引入PropTypes可能会遇到的问题

当我们在使用React编写组件时,为了保证组件传入的Props数据类型正确,通常会用到PropTypes。但在某些情况下,我们在引入PropTypes时会遇到'ReferenceError: Cannot find variable: PropTypes'的错误。

问题原因

在React 15.5版本中,PropTypes已经被从React中剥离出来,而需要使用prop-types库来代替。因此,我们需要先安装prop-types库并引入后,才能够在组件中使用。

解决方案

安装prop-types库:

npm install prop-types

引入prop-types库:

import PropTypes from 'prop-types';

引入后即可在组件中使用PropTypes进行Props类型校验。

代码示例
import React from 'react';
import PropTypes from 'prop-types';

const MyComponent = ({ name, age, height }) => (
  <div>
    <p>姓名:{name}</p>
    <p>年龄:{age}</p>
    <p>身高:{height}cm</p>
  </div>
);

MyComponent.propTypes = {
  name: PropTypes.string.isRequired,
  age: PropTypes.number.isRequired,
  height: PropTypes.number.isRequired
};

export default MyComponent;

以上示例中,我们引入了prop-types库并使用了其中的PropTypes进行了Props类型校验,避免了出现'ReferenceError: Cannot find variable: PropTypes'这样的问题。

总结:在React 15.5版本及以上的版本中使用组件Props校验时,需安装prop-types库并使用其中的PropTypes进行校验。避免了出现'ReferenceError: Cannot find variable: PropTypes'错误的问题。