javascript - 使用 react-select 在 React 中导入自定义组件并崩溃并出现错误:Minified React 错误 #188
问题描述
我在 React(16.4) 和 Webpack 4 中开发了一个自定义组件库。配置被弹出并使用 git+ssh://git@bitbucket.org.... 在 package.json 上导入到其他项目。
当我在其他项目中使用此库时,只有一个组件不起作用,它是使用 react-select (Jed Watson) 开发的选择输入,单击时会崩溃。
所有应用程序崩溃,我有这个错误:
未捕获的错误:缩小的 React 错误 #188;访问https://reactjs.org/docs/error-decoder.html?invariant=188以获取完整消息,或使用非缩小开发环境获取完整错误和其他有用的警告。
来自上述错误链接的消息:
无法在未安装的组件上找到节点。
我现在的问题是我的 webpack 配置,但我找不到任何解决方案来解决这个问题。
与社区的最后希望...
解决方案
我有类似的情况 - 我正在开发一个自定义组件库并将其导入到外部项目中。我遇到了 react-bootstrap、react-transition-group 和其他在生产中动态挂载/卸载 DOM 元素的外部库的问题;缩小反应错误 #188 会使生产版本崩溃。这是我在 module.exports 下的 webpack 配置中解决它的方法(开发和产品配置):
alias: {
// Support React Native Web
// https://www.smashingmagazine.com/2016/08/a-glimpse-into-the-future-with-react-native-for-web/
"react-native": "react-native-web",
react: path.resolve("./node_modules/react"),
"react-dom": path.resolve("./node_modules/react-dom"),
"react-transition-group": path.resolve(
"./node_modules/react-transition-group"
)
}
这应该覆盖所有依赖项中这些特定库的任何其他实例;每当它们被导入/使用时,它们都被迫使用我的项目在 package.json 中指定的版本。请记住,我使用的是 Webpack 3,因此 Webpack 4 的修复可能会有所不同。
推荐阅读
- html - 文本对某些 div 的不透明度为零,但对其他 div 不透明度为零
- laravel - 基于项目创建 laravel 护照令牌
- c# - 错误 ITMS-90685:CFBundleIdentifier 冲突。CFBundleIdentifier 值为“xamarin.ios.xamarin-framework”的捆绑包不止一个
- android - 我的 NDK 项目无法编译,出现与 CPU 架构相关的问题
- java - 获取完整的项目路径java
- gunicorn - Airflow 的 Gunicorn 正在发送错误日志
- nosql - 使用 N1QL 从 Couchbase 中删除所有内容为空的文档
- c# - Azure Bot Framework Emulator 错误 - System.ArgumentNullException:值不能为空
- swift - 有没有办法模拟视图?
- python - 如何将变量从 Django 传递给 Scrapy?