将代码库从 React 移植到 Preact-Compat,this.setState() 不是函数

Porting Codebase from React to Preact-Compat, this.setState() is not a function

我正在尝试将代码库从 React 移植到 Preact-Compat。 我基本上只是更新了 webpack 配置,将 react 和 react-dom 别名为 preact-compat.

{
  "resolve": {
  "alias": {
    "react": "preact-compat",
    "react-dom": "preact-compat"
   }
 }
}

但是在执行项目时出现以下错误:

TypeError: this.setState 不是函数

所以这显然是一个强制性的反应功能,所以这就是为什么我不太确定在哪里看...

这对任何人来说都是警钟吗?提前致谢!

添加这个将解决您的问题:

alias: {
  ...
  'create-react-class': 'preact-compat/lib/create-react-class'
}

在这里你可以阅读关于这个主题的整个话题:

https://github.com/developit/preact-compat/issues/47