首页 > 解决方案 > 自 Webpack 4 以来,React PropType 验证不起作用

问题描述

我们正在使用以下 npm 包(以及许多其他包):

"dependencies": {
  "prop-types": "15.5.10"
},
"devDependencies": {
  "autodll-webpack-plugin": "0.4.2",
  "copy-webpack-plugin": "4.5.3",
  "html-webpack-plugin": "3.2.0",
  "react": "16.4.2",
  "stats-webpack-plugin": "0.7.0",
  "webpack": "4.20.2",
  "webpack-bundle-analyzer": "3.0.2",
  "webpack-cli": "3.1.2",
  "webpack-dev-server": "3.1.9",
  "webpack-visualizer-plugin": "0.1.11"
}

在这里,我只列出了所有与Webpack相关的包以及我们正在使用的版本ReactPropTypes 。显然使用了更多的包(这可能会导致问题)。

问题是,由于我们将Webpack从版本 3 更新到 4,PropTypes验证不起作用。

也许这个问题与 Webpack 无关,但自从升级以来,如果我们省略一个属性,我们不会在开发模式下收到控制台错误。isRequired

该网站运行完美无瑕webpack-dev-server
我们使用以下命令启动服务器:
webpack-dev-server --mode=development

在代码中,如果我将 的值输出process.env.NODE_ENV到浏览器的控制台,我会得到development. 然而,如果我省略了一个isRequired属性,应用程序不会像使用 Webpack 3之前那样在 浏览器的控制台输出中发出警告。

defaultProps不用于该isRequired属性。

感谢您的帮助,如果您需要更多信息进行调查,请告诉我!

标签: reactjswebpackwebpack-dev-serverwebpack-4react-proptypes

解决方案


推荐阅读