我无法启动应用程序。我不知道我在寻找什么。一切都很好。
在一开始,我试图改变我的商店从redux到mobx。我所做的一切主要是关于打字,巴别塔转换等。最后,我的项目成功了。但是,typescript build不足以启动我的项目。此时此刻我很困惑。有什么建议吗?解决方案会更好:))
这是我的package.json
{
"name": "client",
"version": "0.1.0",
"private": true,
"dependencies": {
"@babel/core": "^7.11.0",
"@babel/plugin-proposal-class-properties": "^7.10.4",
"@babel/plugin-proposal-decorators": "^7.10.5",
"@babel/plugin-proposal-object-rest-spread": "^7.11.0",
"@babel/preset-env": "^7.11.0",
"@babel/preset-react": "^7.10.4",
"@babel/preset-typescript": "^7.10.4",
"@types/jest": "^26.0.7",
"@types/node": "^14.0.26",
"@types/react": "^16.9.43",
"@types/react-dom": "^16.9.8",
"@types/react-redux": "^7.1.9",
"@types/react-router-dom": "^5.1.5",
"@types/react-select": "^3.0.14",
"axios": "^0.18.0",
"babel-plugin-transform-decorators-legacy": "^1.3.5",
"create-react-hook": "^3.0.2",
"date-fns": "^2.0.0-alpha.27",
"mobx": "^5.15.4",
"mobx-react": "^6.2.5",
"mobx-react-lite": "^2.0.7",
"moment": "^2.24.0",
"node-sass": "^4.14.1",
"prop-types": "^15.7.2",
"react": "^16.6.3",
"react-alert": "^5.5.0",
"react-alert-template-basic": "^1.0.0",
"react-confirm-alert": "^2.0.7",
"react-datepicker": "^2.5.0",
"react-dom": "^16.6.3",
"react-dropdown": "^1.6.4",
"react-fileupload-progress": "^0.4.2",
"react-redux": "^6.0.0",
"react-router": "^4.3.1",
"react-router-dom": "^4.3.1",
"react-scripts": "2.1.1",
"react-select": "^2.4.3",
"react-table": "^6.8.6",
"react-transition-group": "^4.0.1",
"redux": "^4.0.1",
"typescript": "^3.9.7"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": [
">0.2%",
"not dead",
"not ie <= 11",
"not op_mini all",
"not dead",
"not ie <= 11",
"not op_mini all",
"not ie <= 11",
"not op_mini all"
]
}
此外,错误如下所示
Error: mobx-react-lite requires React with Hooks support
▼ 2 stack frames were expanded.
Module.<anonymous>
C:/Users/User/Source/repos/sasd/node_modules/mobx-react-lite/dist/mobxreactlite.esm.js:5
Module../node_modules/mobx-react-lite/dist/mobxreactlite.esm.js
http://localhost:3000/static/js/0.chunk.js:7192:30
▲ 2 stack frames were expanded.
__webpack_require__
C:/Users/User/Source/repos/obilet/webpack/bootstrap:782
779 | };
780 |
781 | // Execute the module function
> 782 | modules[moduleId].call(module.exports, module, module.exports, hotCreateRequire(moduleId));
| ^ 783 |
784 | // Flag the module as loaded
785 | module.l = true;`
3条答案
按热度按时间4ioopgfo1#
第一个支持钩子的react版本是
16.8.0
不确定您安装的库版本与这些恼人的
^
尝试
npm update react
或yarn upgrade react
von4xj4u2#
在使用mobx的地方添加“使用客户端”
dfddblmv3#
这将是一个迟来的答案,并没有真正解决操作问题,因为他们使用的是旧版本的react,但如果你遇到这个问题使用现代的react和Next.js(>= 13.x),它是作为上述评论者的状态。你需要在任何脚本的顶部添加“使用客户端”,你计划在使用钩子的时候制作前端。Next.js将把任何其他脚本视为服务器组件禁用钩子。