diff --git a/README.md b/README.md index 07afeb7..127587e 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,11 @@ -# umi project - -## Getting Started - -Install dependencies, - -```bash -$ yarn -``` - -Start the dev server, - -```bash -$ yarn start -``` +# LOCKING 盒子 +## 开发 + 开发相关分为前端部分和本地网关工具 + * 网关部分: 涉及文件: locking-kit-server.exe, ipfs.exe, fts.exe (或者可能被整合了,问后端要) + * 前端部分: + * ```npm run start``` 启动web项目 + * ```npm run start:electron``` 开启electron窗口 + * PS: 如果端口号改了,则```electron/main.js```中的端口号也需要一并更改 + +## 打包 + * 执行脚本 ```npm run pack:electron```, 脚本跑完后会在```electron/electron_dist```中产出 \ No newline at end of file diff --git a/electron/config.js b/electron/config.js index 329a3cf..7d2eb94 100644 --- a/electron/config.js +++ b/electron/config.js @@ -1,5 +1,6 @@ +const isDev = process.env.NODE_ENV === 'development'; + module.exports = { - remoteUrl: 'http://139.198.180.242:9003/', - // remoteUrl: 'https://www.locking.cn/', + remoteUrl: isDev ? 'http://139.198.180.242:9003/' : 'https://www.locking.cn/', gatewayPort: 7888, }; diff --git a/electron/main.js b/electron/main.js index dfc1307..9ecd73f 100644 --- a/electron/main.js +++ b/electron/main.js @@ -14,6 +14,8 @@ const { initialStorageEvents, storage } = require('./storage'); let mainWindow; +const isDev = process.env.NODE_ENV === 'development'; + function createWindow() { //创建窗口 mainWindow = new BrowserWindow({ @@ -207,7 +209,9 @@ function createNotifycationWindow(windowWidth, windowHeight) { alwaysOnTop: true, }); // 这里的路径是umi输出的html路径,如果没有修改过,路径和下面是一样的 - notifyWindow.webContents.openDevTools(); + if (isDev) { + notifyWindow.webContents.openDevTools(); + } notifyWindow.loadFile(path.join(__dirname, 'notifycation.html')); notifyWindow.setSkipTaskbar(true); notifyWindow.hide(); diff --git a/electron/package.json b/electron/package.json index a5ae2f2..e34d50a 100644 --- a/electron/package.json +++ b/electron/package.json @@ -19,7 +19,9 @@ }, "win": { "icon": "logo.ico", - "target": ["portable"] + "target": [ + "portable" + ] }, "linux": { "icon": "logo.ico" @@ -31,6 +33,7 @@ "electron-store": "^8.0.0" }, "devDependencies": { + "cross-env": "^7.0.3", "electron": "^13.1.6", "electron-packager": "^15.2.0" } diff --git a/electron/yarn.lock b/electron/yarn.lock index 8dd3234..fd66a74 100644 --- a/electron/yarn.lock +++ b/electron/yarn.lock @@ -244,6 +244,22 @@ core-util-is@~1.0.0: resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= +cross-env@^7.0.3: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-7.0.3.tgz#865264b29677dc015ba8418918965dd232fc54cf" + integrity sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw== + dependencies: + cross-spawn "^7.0.1" + +cross-spawn@^7.0.1: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + debounce-fn@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/debounce-fn/-/debounce-fn-4.0.0.tgz#ed76d206d8a50e60de0dd66d494d82835ffe61c7" @@ -684,6 +700,11 @@ isbinaryfile@^3.0.2: dependencies: buffer-alloc "^1.2.0" +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + json-buffer@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" @@ -950,6 +971,11 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + path-parse@^1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" @@ -1127,6 +1153,18 @@ serialize-error@^7.0.1: dependencies: type-fest "^0.13.1" +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + spdx-correct@^3.0.0: version "3.1.1" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" @@ -1253,6 +1291,13 @@ validate-npm-package-license@^3.0.1: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" +which@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" diff --git a/package.json b/package.json index ca64f5f..30ec25a 100644 --- a/package.json +++ b/package.json @@ -6,9 +6,10 @@ "main": "electron/main.js", "scripts": { "start": "umi dev", + "start:electron": "cd ./electron && npm run start", "build": "umi build", "build:electron": "cross-env BUILD_TYPE=electron umi build", - "pack:electron": "node ./scripts/pack-electron", + "pack:electron": "npm run build:electron && cd ./electron && npm run pack", "postinstall": "umi generate tmp", "prettier": "prettier --write '**/*.{js,jsx,tsx,ts,less,md,json}'", "test": "umi-test", diff --git a/scripts/pack-electron.js b/scripts/pack-electron.js deleted file mode 100644 index 5a35b62..0000000 --- a/scripts/pack-electron.js +++ /dev/null @@ -1,20 +0,0 @@ -const exec = require('child_process').exec; - -function execAsync(...args) { - return new Promise((r) => { - exec(...args, function (err, stdout, stderr) { - if (stdout) console.log(stdout); - if (stderr) console.log(stderr); - if (!err) { - r(); - } - }); - }); -} - -async function main() { - await execAsync('npm run build:electron'); - await execAsync('npm run pack', { cwd: './electron' }); -} - -main();