{"id":2673,"date":"2023-08-02T15:48:10","date_gmt":"2023-08-02T07:48:10","guid":{"rendered":"https:\/\/www.zhidianwl.net\/zhidianwl\/?p=2673"},"modified":"2023-08-02T15:48:10","modified_gmt":"2023-08-02T07:48:10","slug":"h5%e6%89%93%e5%8c%85exe%e6%a1%8c%e9%9d%a2%e5%ba%94%e7%94%a8%e5%b8%b8%e7%94%a8%e5%b7%a5%e5%85%b7%e6%8e%a8%e8%8d%90","status":"publish","type":"post","link":"https:\/\/www.zhidianwl.net\/zhidianwl\/2023\/08\/02\/h5%e6%89%93%e5%8c%85exe%e6%a1%8c%e9%9d%a2%e5%ba%94%e7%94%a8%e5%b8%b8%e7%94%a8%e5%b7%a5%e5%85%b7%e6%8e%a8%e8%8d%90\/","title":{"rendered":"h5\u6253\u5305exe\u684c\u9762\u5e94\u7528\u5e38\u7528\u5de5\u5177\u63a8\u8350"},"content":{"rendered":"
H5\u662f\u4e00\u79cd\u57fa\u4e8eWeb\u6280\u672f\u7684\u6807\u51c6\uff0c\u5b83\u4f7fWeb\u5e94\u7528\u7a0b\u5e8f\u80fd\u591f\u66f4\u52a0\u7075\u6d3b\u548c\u53ef\u6269\u5c55\u3002\u73b0\u5728\uff0c\u8d8a\u6765\u8d8a\u591a\u7684\u4eba\u5f00\u59cb\u4f7f\u7528H5\u6765\u6784\u5efa\u81ea\u5df1\u7684Web\u5e94\u7528\u7a0b\u5e8f\uff0c\u4f46\u662f\uff0c\u5bf9\u4e8e\u4e00\u4e9b\u9700\u8981\u79bb\u7ebf\u8fd0\u884c\u7684\u5e94\u7528\u7a0b\u5e8f\u6765\u8bf4\uff0cH5\u7684\u5728\u7ebf\u90e8\u7f72\u65b9\u5f0f\u5e76\u4e0d\u9002\u7528\u3002\u56e0\u6b64\uff0c\u6709\u4eba\u5f00\u59cb\u5c1d\u8bd5\u5c06H5\u5e94\u7528\u7a0b\u5e8f\u6253\u5305\u6210\u53ef\u6267\u884c\u6587\u4ef6\uff0c\u4ee5\u4fbf\u5728\u79bb\u7ebf\u73af\u5883\u4e0b\u8fd0\u884c\u3002\u672c\u6587\u5c06\u8be6\u7ec6\u4ecb\u7ecd\u5982\u4f55\u6253\u5305H5\u5e94\u7528\u7a0b\u5e8f\u6210\u4e3a\u53ef\u6267\u884c\u6587\u4ef6\u3002<\/p>\n
1. \u6253\u5305\u5de5\u5177<\/p>\n
\u9996\u5148\uff0c\u6211\u4eec\u9700\u8981\u9009\u62e9\u4e00\u4e2a\u6253\u5305\u5de5\u5177\u3002\u76ee\u524d\uff0c\u5e02\u9762\u4e0a\u6709\u5f88\u591aH5\u6253\u5305\u5de5\u5177\uff0c\u6bd4\u5982Electron\u3001NW.js\u3001Appcelerator\u7b49\u3002\u5728\u8fd9\u4e9b\u5de5\u5177\u4e2d\uff0cElectron\u662f\u6700\u4e3a\u6d41\u884c\u7684\u4e00\u4e2a\uff0c\u56e0\u6b64\u6211\u4eec\u5c06\u4ee5Electron\u4e3a\u4f8b\u6765\u4ecb\u7ecd\u5982\u4f55\u6253\u5305H5\u5e94\u7528\u7a0b\u5e8f\u3002<\/p>\n
2. \u5b89\u88c5Electron<\/p>\n
\u5728\u5f00\u59cb\u4e4b\u524d\uff0c\u6211\u4eec\u9700\u8981\u5148\u5b89\u88c5Electron\u3002Electron\u662f\u4e00\u4e2a\u57fa\u4e8eNode.js\u548cChromium\u7684\u6846\u67b6\uff0c\u53ef\u4ee5\u8ba9\u6211\u4eec\u4f7f\u7528Web\u6280\u672f\u6765\u6784\u5efa\u684c\u9762\u5e94\u7528\u7a0b\u5e8f\u3002\u5b83\u63d0\u4f9b\u4e86\u4e00\u4e2a\u53ef\u6267\u884c\u6587\u4ef6\uff0c\u53ef\u4ee5\u5c06\u6211\u4eec\u7684\u5e94\u7528\u7a0b\u5e8f\u6253\u5305\u6210\u4e3a\u4e00\u4e2a\u53ef\u6267\u884c\u6587\u4ef6\u3002<\/p>\n
\u5b89\u88c5Electron\u975e\u5e38\u7b80\u5355\uff0c<\/p>\n
\u53ea\u9700\u8981\u5728\u547d\u4ee4\u884c\u4e2d\u8f93\u5165\u4ee5\u4e0b\u547d\u4ee4\u5373\u53ef\uff1a<\/p>\n “`<\/p>\n npm install electron –save-dev<\/p>\n “`<\/p>\n 3. \u521b\u5efa\u5e94\u7528\u7a0b\u5e8f<\/p>\n \u5728\u5b89\u88c5\u597dElectron\u4e4b\u540e\uff0c\u6211\u4eec\u9700\u8981\u521b\u5efa\u4e00\u4e2a\u5e94\u7528\u7a0b\u5e8f\u3002\u5728\u8fd9\u91cc\uff0c\u6211\u4eec\u5c06\u521b\u5efa\u4e00\u4e2a\u7b80\u5355\u7684Hello World\u5e94\u7528\u7a0b\u5e8f\u3002<\/p>\n \u9996\u5148\uff0c\u6211\u4eec\u9700\u8981\u521b\u5efa\u4e00\u4e2a\u6587\u4ef6\u5939\uff0c\u5e76\u5728\u6587\u4ef6\u5939\u4e2d\u521b\u5efa\u4e00\u4e2a\u540d\u4e3a\u201cindex.html\u201d\u7684\u6587\u4ef6\uff0c\u5185\u5bb9\u5982\u4e0b\uff1a<\/p>\n “`html<\/p>\n<\/p>\n \n \n \n Hello World!<\/p>\n<\/p>\n “`<\/p>\n \u7136\u540e\uff0c\u6211\u4eec\u9700\u8981\u521b\u5efa\u4e00\u4e2a\u540d\u4e3a\u201cmain.js\u201d\u7684\u6587\u4ef6\uff0c\u5185\u5bb9\u5982\u4e0b\uff1a<\/p>\n “`javascript<\/p>\n const { app, BrowserWindow } = require(‘electron’)<\/p>\n function createWindow () {<\/p>\n const win = new BrowserWindow({<\/p>\n width: 800,<\/p>\n height: 600,<\/p>\n webPreferences: {<\/p>\n nodeIntegration: true<\/p>\n }<\/p>\n })<\/p>\n win.loadFile(‘index.html’)<\/p>\n }<\/p>\n app.whenReady().then(() => {<\/p>\n createWindow()<\/p>\n app.on(‘activate’, () => {<\/p>\n if (BrowserWindow.getAllWindows().length === 0) {<\/p>\n createWindow()<\/p>\n }<\/p>\n })<\/p>\n })<\/p>\n app.on(‘window-all-closed’, () => {<\/p>\n if (process.platform !== ‘darwin’) {<\/p>\n app.quit()<\/p>\n }<\/p>\n })<\/p>\n “`<\/p>\n \u8fd9\u4e2a\u6587\u4ef6\u5c06\u521b\u5efa\u4e00\u4e2a\u7a97\u53e3\uff0c\u5e76\u5728\u7a97\u53e3\u4e2d\u52a0\u8f7d\u6211\u4eec\u7684HTML\u6587\u4ef6\u3002<\/p>\n 4. \u6253\u5305\u5e94\u7528\u7a0b\u5e8f<\/p>\n \u73b0\u5728\uff0c\u6211\u4eec\u5df2\u7ecf\u7f16\u5199\u4e86\u5e94\u7528\u7a0b\u5e8f\u7684\u4ee3\u7801\uff0c\u4e0b\u4e00\u6b65\u662f\u5c06\u5b83\u6253\u5305\u6210\u4e3a\u53ef\u6267\u884c\u6587\u4ef6\u3002\u5728\u8fd9\u91cc\uff0c\u6211\u4eec\u5c06\u4f7f\u7528Electron Builder\u6765\u6253\u5305\u5e94\u7528\u7a0b\u5e8f\u3002<\/p>\n \u9996\u5148\uff0c\u6211\u4eec\u9700\u8981\u5728\u547d\u4ee4\u884c\u4e2d\u8f93\u5165\u4ee5\u4e0b\u547d\u4ee4\u6765\u5b89\u88c5Electron Builder\uff1a<\/p>\n “`<\/p>\n npm install electron-builder –save-dev<\/p>\n “`<\/p>\n \u7136\u540e\uff0c\u6211\u4eec\u9700\u8981\u5728\u9879\u76ee\u7684\u6839\u76ee\u5f55\u4e0b\u521b\u5efa\u4e00\u4e2a\u540d\u4e3a\u201celectron-builder.json\u201d\u7684\u6587\u4ef6\uff0c\u5185\u5bb9\u5982\u4e0b\uff1a<\/p>\n “`json<\/p>\n {<\/p>\n “appId”: “com.example.helloworld”,<\/p>\n “productName”: “Hello World”,<\/p>\n “directories”: {<\/p>\n “output”: “dist”<\/p>\n },<\/p>\n “files”: [<\/p>\n “index.html”,<\/p>\n “main.js”<\/p>\n ],<\/p>\n “mac”: {<\/p>\n “target”: “dmg”<\/p>\n },<\/p>\n “win”: {<\/p>\n “target”: “nsis”<\/p>\n },<\/p>\n “linux”: {<\/p>\n<\/figure>\n<\/p>\n