【发布时间】:2022-12-24 16:02:54
【问题描述】:
我一直在尝试实现电子并与下面的package.json一起做出反应
{
"name": "loader",
"version": "0.1.0",
"private": true,
"dependencies": {
"@testing-library/jest-dom": "^5.16.5",
"@testing-library/react": "^13.3.0",
"@testing-library/user-event": "^13.5.0",
"cross-env": "^7.0.3",
"electron-is-dev": "^2.0.0",
"react": "^18.2.0",
"react-countup": "^6.3.1",
"react-dom": "^18.2.0",
"react-icons": "^4.4.0",
"react-idle-timer": "^5.4.2",
"react-loader-spinner": "^5.3.3",
"react-rnd": "^10.3.7",
"react-router-dom": "^6.4.0",
"react-scripts": "5.0.1",
"react-spring": "^9.5.3",
"styled-components": "^5.3.5",
"web-vitals": "^2.1.4"
},
"main": "public/main.js",
"homepage": "./",
"scripts": {
"react-start": "react-scripts start",
"react-build": "react-scripts build",
"react-test": "react-scripts test --env=jsdom",
"react-eject": "react-scripts eject",
"electron-build": "electron-builder",
"release": "yarn react-build && electron-builder --publish=always",
"build": "yarn react-build && yarn electron-build",
"start": "concurrently \"cross-env BROWSER=none yarn react-start\" \"wait-on http://localhost:3000/ && electron .\""
},
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
},
"devDependencies": {
"concurrently": "^7.5.0",
"electron": "^21.2.3",
"electron-builder": "^23.6.0",
"wait-on": "^6.0.1"
}
}
很明显,并发用于同时运行所有命令。现在,当我执行 yarn start 时,所有命令都与 react-start 一起执行,但即使在 http://localhost:3000 可用后,wait-on 也不会进一步执行并卡住,最终电子永远不会启动。
如果在没有 wait-on 的情况下进行测试,那么所有命令都可以与电子一起很好地执行。
有人可以指导吗?
【问题讨论】:
-
你好,你试过electron-react-boilerplate吗?
-
不,但是上面的代码在没有
wait-on的情况下仍然很好,问题是为什么wait-on没有提前执行,或者为什么它无法检测到localhost:300何时可用。 React 启动需要一些时间,但它应该在localhost:300可用时完成工作
标签: reactjs electron package.json