最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue?electron零基礎使用教程

 更新時間:2022年10月20日 10:58:44   作者:yzkdcsdn  
Electron也可以快速地將你的網(wǎng)站打包成一個原生應用發(fā)布,下面這篇文章主要給大家介紹了關于Vue和React中快速使用Electron的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下

需求:給vue項目加一個外殼(electron),顧名思義也就是使用electron應用程序運行vue項目,直接將寫好上線的vue項目在線地址放入electron程序中即可

操作步驟:

1、構建:構建應用程序首先要先安裝electron相關依賴包以及搭建框架。在這里就不詳細贅述了,直接上官網(wǎng)看文檔https://www.electronjs.org/zh/docs/latest/tutorial/quick-start

2、打包:此時就到了重要的時候,官方指定的是使用腳手架打包-----Electron Forge

https://www.electronforge.io/

首先安裝Electron Forge

使用npm
npm install --save-dev @electron-forge/cli
npx electron-forge import

? Checking your system
? Initializing Git Repository
? Writing modified package.json file
? Installing dependencies
? Writing modified package.json file
? Fixing .gitignore

We have ATTEMPTED to convert your app to be in a format that electron-forge understands.

Thanks for using "electron-forge"!!!

使用yarn
yarn add --dev @electron-forge/cli
npx electron-forge import

? Checking your system
? Initializing Git Repository
? Writing modified package.json file
? Installing dependencies
? Writing modified package.json file
? Fixing .gitignore

We have ATTEMPTED to convert your app to be in a format that electron-forge understands.

Thanks for using "electron-forge"!!!

其次使用make命令來創(chuàng)建可分發(fā)的應用程序,官方文檔也說的很清楚

3、最后直接賦上具體代碼

icon為我所創(chuàng)建應用程序圖標,out為輸出目錄,其打包所有配置均在main.js中進行

展示main.js,個別需注意:

–url為vue項目在線地址

–mainWindow為所創(chuàng)建應用程序打開的彈框

–BrowserWindow為官方api具體操作看這里https://www.electronjs.org/zh/docs/latest/api/browser-window

–圖中還自定義了打開應用程序窗口頂部菜單,雖然最后沒有使用,但是有需要的也可以打開注釋

main.js
// main.js
// Modules to control application life and create native browser window
const { app, BrowserWindow, Menu } = require('electron')
const path = require('path')
const url = 'http://xxxxxxxxxx'
//清理緩存 
const clearObj = {
  storages: [
    'appcache',
    'filesystem',
    'indexdb',
    'localstorage',
    'shadercache',
    'websql',
    'serviceworkers',
    'cachestorage'
  ],
};
const createWindow = () => {
  // Create the browser window.
  //取消頂部菜單欄
  // Menu.setApplicationMenu(null)
  const mainWindow = new BrowserWindow({
    maximizable: true,
    show: false,
    // frame: false,
    autoHideMenuBar: true,
    webPreferences: {
      // preload: path.join(__dirname, 'preload.js'),
      partition: String(+new Date())
    },
  })
  // 加載 index.html
  // mainWindow.loadFile(url)
  mainWindow.setTitle("名字標題");
  mainWindow.loadURL(url);
  mainWindow.on('close', (event) => {
    mainWindow.webContents.session.clearStorageData(clearObj);
    mainWindow.reload();
  })
  mainWindow.maximize();
  //自定義菜單
  // const template = [
  //   {
  //     label: '重載',
  //     accelerator: 'CmdOrCtrl+R',
  //     click: (item, mainWindow) => {
  //       if (mainWindow) {
  //         // 重載之后, 刷新并關閉所有之前打開的次要窗體
  //         if (mainWindow.id == 1) {
  //           BrowserWindow.getAllWindows().forEach((win) => {
  //             if (win.id > 1) win.close();
  //           });
  //         }
  //         mainWindow.webContents.session.clearStorageData(clearObj, () => {
  //           mainWindow.reload();
  //         })
  //       }
  //     },
  //   },
  //   {
  //     label: '清除緩存數(shù)據(jù)',
  //     accelerator: 'CmdOrCtrl+Shift+Delete',
  //     click: (item, mainWindow) => {
  //       if (mainWindow) {
  //         mainWindow.webContents.session.clearStorageData(clearObj);
  //         mainWindow.reload();
  //       }
  //     }
  //   },
  // ]
  // const menu = Menu.buildFromTemplate(template)
  // Menu.setApplicationMenu(menu)
  // 打開開發(fā)工具
  // mainWindow.webContents.openDevTools()
  mainWindow.webContents.closeDevTools();
}
// 這段程序?qū)?Electron 結(jié)束初始化
// 和創(chuàng)建瀏覽器窗口的時候調(diào)用
// 部分 API 在 ready 事件觸發(fā)后才能使用。
app.whenReady().then(() => {
  createWindow()
  app.on('activate', () => {
    // On macOS it's common to re-create a window in the app when the
    // dock icon is clicked and there are no other windows open.
    if (BrowserWindow.getAllWindows().length === 0) createWindow()
  })
})
// 除了 macOS 外,當所有窗口都被關閉的時候退出程序。 There, it's common
// for applications and their menu bar to stay active until the user quits
// explicitly with Cmd + Q.
app.on('window-all-closed', () => {
  if (process.platform !== 'darwin') app.quit()
})
// In this file you can include the rest of your app's specific main process
// code. 也可以拆分成幾個文件,然后用 require 導入。

4、最后就是生成的應用程序的配置信息修改–package.json

在package.json中的config中添加如下代碼:

即forge下的packagerConfig中含有版本,名字,創(chuàng)作人,圖標等配置信息

"config": {
    "forge": {
      "packagerConfig": {
        "appVersion": "1.1.3",
        "name": "你的應用程序名字",
        "appCopyright": "姓名",
        "icon": "應用程序logo"
      },
      "makers": [
        {
          "name": "@electron-forge/maker-squirrel",
          "config": {
            "name": "my_electron_app"
          }
        },
        {
          "name": "@electron-forge/maker-zip",
          "platforms": [
            "darwin"
          ]
        },
        {
          "name": "@electron-forge/maker-deb",
          "config": {}
        },
        {
          "name": "@electron-forge/maker-rpm",
          "config": {}
        }
      ]
    }
  }

5、當然打包electron程序有很多種方法,比如:

electron-packager

electron-builder

Electron-Forge腳手架

Electron-Vue腳手架

等等,選擇適合自己項目需求的才是最實用的。

到此這篇關于Vue electron零基礎使用教程的文章就介紹到這了,更多相關Vue electron內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Vue 實時監(jiān)聽窗口變化 windowresize的兩種方法

    Vue 實時監(jiān)聽窗口變化 windowresize的兩種方法

    這篇文章主要介紹了Vue 實時監(jiān)聽窗口變化 windowresize的兩種方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-11-11
  • vue.js 左側(cè)二級菜單顯示與隱藏切換的實例代碼

    vue.js 左側(cè)二級菜單顯示與隱藏切換的實例代碼

    這篇文章主要介紹了vue.js 左側(cè)二級菜單顯示與隱藏切換的實例代碼,需要的朋友可以參考下
    2017-05-05
  • vue 使用餓了么UI仿寫teambition的篩選功能

    vue 使用餓了么UI仿寫teambition的篩選功能

    這篇文章主要介紹了vue 如何使用餓了么UI仿寫teambition的篩選功能,幫助大家更好的理解和學習使用vue框架
    2021-03-03
  • 基于vue實現(xiàn)簡易打地鼠游戲

    基于vue實現(xiàn)簡易打地鼠游戲

    這篇文章主要為大家詳細介紹了基于vue實現(xiàn)簡易打地鼠游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-08-08
  • 前端預覽pdf文件流詳細步驟

    前端預覽pdf文件流詳細步驟

    公司最近有這么個需求,在線預覽pdf功能,正好有點時間,稍微整理記錄一下,這篇文章主要給大家介紹了關于前端預覽pdf文件流的相關資料,需要的朋友可以參考下
    2023-09-09
  • Vue element商品列表的增刪改功能實現(xiàn)

    Vue element商品列表的增刪改功能實現(xiàn)

    這篇文章主要介紹了Vue+element 商品列表、新增、編輯、刪除業(yè)務實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-08-08
  • Vue學習筆記進階篇之過渡狀態(tài)詳解

    Vue學習筆記進階篇之過渡狀態(tài)詳解

    本篇文章主要介紹了Vue學習筆記進階篇之過渡狀態(tài)詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • vue中實現(xiàn)滾動加載更多的示例

    vue中實現(xiàn)滾動加載更多的示例

    下面小編就為大家?guī)硪黄獀ue中實現(xiàn)滾動加載更多的示例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • Vue 微信端掃描二維碼蘋果端卻只能保存圖片問題(解決方法)

    Vue 微信端掃描二維碼蘋果端卻只能保存圖片問題(解決方法)

    這幾天在做項目時遇到微信掃描二維碼的然后進入公眾號網(wǎng)頁巴拉巴拉的,然后就很順利的遇到了在安卓端掃碼的時候,順利的一塌糊涂,然后到了蘋果端的時候,就只能出現(xiàn)一個保存圖片,然后就寫一下記錄一下這問題的解決方法
    2020-01-01
  • vue基于Echarts的拖拽數(shù)據(jù)可視化功能實現(xiàn)

    vue基于Echarts的拖拽數(shù)據(jù)可視化功能實現(xiàn)

    這篇文章主要給大家介紹了關于vue基于Echars的拖拽數(shù)據(jù)可視化功能實現(xiàn)的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12

最新評論

江华| 云龙县| 凤城市| 安多县| 西青区| 淮北市| 南靖县| 威远县| 西安市| 崇州市| 肥城市| 石景山区| 内黄县| 定州市| 图们市| 鄂尔多斯市| 神木县| 永城市| 甘德县| 始兴县| 南昌市| 聊城市| 漠河县| 台山市| 论坛| 赫章县| 新干县| 姜堰市| 兴宁市| 邵阳县| 福泉市| 娱乐| 黔西| 青冈县| 九江县| 农安县| 忻城县| 通海县| 阳城县| 辽中县| 扶余县|