Reactjs 电子版生成后express服务器不工作
我对电子技术还不熟悉,一直在生产中。我的应用程序在开发模式下运行良好,但在我构建应用程序并运行桌面应用程序后,它一直无法满足我对服务器的请求。我使用react作为前端,express作为后端,并将它们与electron捆绑在一起。现在确定package.json中的代理是否导致了问题。谁能帮帮我吗 我的文件夹结构如下所示Reactjs 电子版生成后express服务器不工作,reactjs,express,electron,electron-builder,Reactjs,Express,Electron,Electron Builder,我对电子技术还不熟悉,一直在生产中。我的应用程序在开发模式下运行良好,但在我构建应用程序并运行桌面应用程序后,它一直无法满足我对服务器的请求。我使用react作为前端,express作为后端,并将它们与electron捆绑在一起。现在确定package.json中的代理是否导致了问题。谁能帮帮我吗 我的文件夹结构如下所示 计划 前端 -建造 -公开的 -electron.js -Src 后端 -server.js mypackage.json { "name":
- 计划
- 前端 -建造 -公开的 -electron.js -Src
- 后端 -server.js
{
"name": "Myapp",
"version": "0.1.0",
"description": "My first electron app",
"author": "HenryLee",
"main": "public/electron.js",
"proxy": "http://localhost:5000",
"build": {
"appId": "com.myapp.firstelectronapp",
"icon": "build/icon.ico"
},
"homepage": "./",
"dependencies": {
"@testing-library/jest-dom": "^4.2.4",
"@testing-library/react": "^9.5.0",
"@testing-library/user-event": "^7.2.1",
"axios": "^0.20.0",
"cross-env": "^7.0.2",
"electron-is-dev": "^1.2.0",
"react": "^16.14.0",
"react-dom": "^16.14.0",
"react-scripts": "3.4.3",
"smalltalk": "^4.0.7"
},
"scripts": {
"react-start": "react-scripts start",
"react-build": "react-scripts build",
"react-test": "react-scripts test",
"react-eject": "react-scripts eject",
"electron-build": "electron-builder",
"build": "npm run react-build && npm run electron-build",
"start": "concurrently \"cross-env BROWSER=none npm run react-start\" \"wait-on http://localhost:3000 && electron .\""
},
"devDependencies": {
"concurrently": "^5.3.0",
"electron": "^10.1.3",
"electron-builder": "^22.9.1",
"wait-on": "^5.2.0"
}
我的electron.js
const { app, BrowserWindow, Menu, shell } = require('electron')
const isDev = require('electron-is-dev')
const path = require('path')
const isMac = process.platform === 'darwin'
function createWindow () {
const win = new BrowserWindow({
width: 1300,
height: 665,
icon: path.join(__dirname, 'ctklogo.png'),
webPreferences: {
nodeIntegration: true
}
})
win.loadURL(
isDev ? 'http://localhost:3000' : `file://${path.join(__dirname, "../build/index.html")}`
)
}
app.on('window-all-closed', () => {
if (process.platform !== 'darwin') {
app.quit()
}
})
app.on('activate', () => {
if (BrowserWindow.getAllWindows().length === 0) {
createWindow()
}
})
My server.js(Express server)
const express = require('express');
const app = express();
const request = require('request');
const cors = require('cors');
const PORT = 5000;
const bodyParser = require('body-parser');
const path = require('path');
// middleware
app.use(express.json())
app.use(express.static(path.join(__dirname, '../frontend/build')))
app.use(bodyParser.urlencoded({ extended: true}))
app.use(cors())
app.use(bodyParser.json())