4

我一直在网上搜索,在任何地方都找不到提到的这种情况,尽管它一定并不罕见。

我一直在使用create-react-app(版本 3.4.x)react-app-rewired[主要是为了启用装饰器支持(对于 MobX)而不弹出]。

我最近尝试cra按照说明通过运行以下命令升级到最新版本(4.0):

yarn add --exact react-scripts@4.0.0

但是,现在在启动我的 React 服务器时,我收到了这个错误:

yarn start
yarn run v1.22.5
$ HTTPS=true BROWSER=none react-app-rewired start --env=local
Cannot read property 'use' of undefined
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

如果我删除react-app-rewired并将启动脚本更改回 using react-scripts,服务器将启动,但我不再支持装饰器。

问题:是否react-app-rewired支持cra4.0?是否有替代解决方案可以在不弹出的情况下启用装饰器?感谢您的任何意见!

4

1 回答 1

1

没有答案rewired,但是在 MobX 6 中有一个新的东西可能会让你完全放弃装饰器,makeAutoObservable

import { makeAutoObservable } from "mobx"

class Store {
  // Don't need decorators now
  string = 'Test String';

  setString = (string) => {
    this.string = string;
  };

  constructor() {
    // Just call it here
    makeAutoObservable (this);
  }
}

更多信息在这里 https://mobx.js.org/migrating-from-4-or-5.htmlhttps://mobx.js.org/react-integration.html

于 2020-11-10T20:52:24.843 回答