Uncaught TypeError: Cannot read property 'componentWillReact' of undefined

在使用 mobxmobx-react 出现错误分析及解决方案

Uncaught TypeError: Cannot read property 'componentWillReact' of undefined
    at eval (mobx-react.module.js?90c4:1)
    at W (mobx-react.module.js?90c4:1)

情况一

使用 React.memo 造成,出现这种情况大多是在 mobx-react v6.1.0 , 此时只需要升级或降级 mobx-react 版本即可

参考 issues : 'componentWillReact' of undefined after updating to 6.1.0

情况二

使用 @observer 后出现该错误,解决方案是将 babel 插件 @babel/plugin-proposal-decoratorslegacy 参数设置为 true, 同时设置 @babel/plugin-proposal-class-properties 插件的 loose 参数设置为 true

注意

  • @babel/plugin-proposal-decorators 插件 启用 legacy 模式下不能启用 decoratorsBeforeExport (既不能设置为 true 也不能设置为 false),否则会出现错误如下: 'decoratorsBeforeExport' can't be used with legacy decorators.

配置参考

{
  "plugins": [
    ["@babel/plugin-proposal-decorators", { "legacy": true }],
    ["@babel/plugin-proposal-class-properties", { "loose" : true }]
  ]
}

作者: 浪子
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 浪子 !
 上一篇
Ngrok 安装教程 Ngrok 安装教程
ngrok是一个反向代理工具,1.x版本源码开源;可以自己搭建一个服务来使用,将本地的web或tcp服务通过公共端口和外部建立一个安全通道,这样就可以通过外网直接访问本地对应的服务,在进行微信公众号等测试开发的时候非常有用 安装ngrok 环境 Linux Centos7 git golang openssl 安装golang 1、下载golang wget https://dl.google.
2020年4月6日
下一篇 
Linux 系统服务脚本 Linux 系统服务脚本
systemctl 服务脚本存放在: /usr/lib/systemd/ ,有系统( system )和用户( user )之分, /usr/lib/systemd/system/ /usr/lib/systemd/user/ Frp Service frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性
2020年4月6日