【electron】electron項目創建的方式:

文章目錄

        • 【1】npm init @quick-start/electron(推薦)
        • 【2】 克隆倉庫,快速啟動
        • 【3】 通過腳手架搭建項目
        • 【4】 手動創建項目


【Electron官網】https://www.electronjs.org/zh/docs/latest/api/app

【1】npm init @quick-start/electron(推薦)

在命令行中執行以下命令:

npm init @quick-start/electron

該命令將安裝并執行腳手架工具 create-electron 。你將看到一些可選功能的提示,例如框架 (vue, react, …) 和 TypeScript 支持:
創建項目后,按照說明安裝依賴項并啟動Electron程序:

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

【2】 克隆倉庫,快速啟動

#1. 克隆項目;
git clone https://github.com/electron/electron-quick-start#2. 進入這個項目下;
cd electron-quick-start#3. 安裝依賴;
npm install#4. 運行項目;
npm start

打開快速啟動的項目,主要有以下幾個文件:
(1). index.html ,渲染進程;
(2). render.js,渲染進程,在index.html中引用;
(3). main.js,主進程;
(4). preload.js,監聽DOM加載完成,在主進程中調用。

【3】 通過腳手架搭建項目

electron-forge是一個用來搭建electron項目的腳手架,不僅可以用來運行項目,還可以用來打包項目。
官網:Getting Started - Electron Forge

#如果電腦上安裝了安裝了最新版本的 node 可以使用 npx 創建項目,如果安裝了 yarn 也可以使用 yarn 創建項目;
npx create-electron-app my-new-app或者yarn create electron-app my-new-app#運行項目;
cd my-new-app  // 進入項目
npm start  // 啟動項目

如果無法使用npx或是yarn安裝項目,可以用傳統的方法來完成。

// 安裝腳手架
npm install -g @electron-forge/cli// 初始化項目
electron-forge init my-new-app// 進入項目
cd my-new-app// 啟動項目
npm start

【4】 手動創建項目

  1. 新建項目文件夾;
  2. 新建渲染進程 index.html 文件與主進程 main.js 文件;
  3. 初始化項目,創建package.json;
npm init 
#請注意,package.json中的主文件必須名為main.js。 
  1. 在項目中安裝Electron;雖然在全局有安裝Electron,但是在寫代碼的時候并沒有提示,所以需要進入項目中安裝一下,這樣就會有提示了。
cnpm i electron --save-dev
  1. 編寫主進程main.js代碼;
const { app, BrowserWindow } = require("electron");
const path = require("path");const createWindow = ()=>{// 創建窗口const mainWindow = new BrowserWindow({width: 800,height: 600});// 加載本地文件mainWindow.loadFile(path.join(__dirname,"index.html"));// 加載遠程地址// mainWindow.loadURL('https://github.com');
}// 監聽應用的啟動事件
app.on("ready",createWindow);// 兼容MacOS系統的窗口關閉功能
app.on("window-all-closed",()=>{// 非MacOS直接退出if(process.platform!="darwin"){app.quit();}
});// 點擊MacOS底部菜單時重新啟動窗口
app.on("activate",()=>{if(BrowserWindow.getAllWindows.length==0){createWindow();}
})
  1. 引入eslint 檢查代碼;
(1). 安裝eslint;cnpm install -g eslint
(2). 在項目中初始化eslint;eslint --init
初始化時會有各種選項,選項可以參考下面的結果。 
  1. 運行項目;
electron .

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/38375.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/38375.shtml
英文地址,請注明出處:http://en.pswp.cn/news/38375.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Excelize Go語言操作 Office Excel文檔基礎庫

Excelize 是 Go 語言編寫的用于操作 Office Excel 文檔基礎庫,基于 ECMA-376,ISO/IEC 29500 國際標準。可以使用它來讀取、寫入由 Microsoft Excel? 2007 及以上版本創建的電子表格文檔。支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多種文檔格式&#xf…

微信小程序實現左滑刪除

一、效果 二、代碼 實現思路使用的是官方提供的 movable-area:注意點,需要設置其高度,否則會出現列表內容重疊的現象。由于movable-view需要向右移動,左滑的時候給刪除控件展示的空間,故 movable-area 需要左移 left:…

Android Gradle Plug-in(AGP ) 的對應關系

AGP 和 Gradle 版本的對應關系 Android Gradle 插件版本說明 | Android 開發者 | Android Developers 插件版本所需的最低 Gradle 版本8.18.08.08.07.47.57.37.47.27.3.37.17.27.07.04.2.06.7.1 舊版 插件版本所需的 Gradle 版本4.1.06.54.0.06.1.13.6.0 - 3.6.45.6.4…

sqlloader學習筆記

INFILE的用法 1)模糊導入多個數據的文件。 可以在文件名中使用通配符。 星號 (*) 表示復數字符,問號 (?) 表示單個字符。 INFILE emp*.dat INFILE m?emp.dat 2)如果不需要導入數據…

jQuery EasyUI datagrid 無記錄時,增加“暫無數據“提示

我們只需要在onLoadSuccess中添加如下代碼&#xff1a; if (data.total 0) {var body $(this).data().datagrid.dc.body2;body.find(table tbody).append(<tr><td width" body.width() " style"height: 35px; text-align: center;"><h…

C語言學習之封裝自定義函數,實現atoi函數功能

實例要求&#xff1a;atoi函數的功能是把字符串轉成整型數值并輸出&#xff1b;把字符串"123456"轉換成數值123456 &#xff0c;并返回數值&#xff1b;函數名&#xff1a; int myatoi(char *str);實例分析&#xff1a; 1.自定義的封裝函數類型是整型&#xff0c;…

在阿里云Linux服務器上部署MySQL數據庫流程

阿里云百科分享在阿里云Linux服務器上部署MySQL數據庫流程&#xff0c;MySQL是一個關系型數據庫管理系統&#xff0c;常用于LAMP和LNMP等網站場景中。本教程介紹如何在Linux系統ECS實例上安裝、配置以及遠程訪問MySQL數據庫。 目錄 背景信息 Alibaba Cloud Linux 2/3、CentO…

上傳excel文件

文件上傳&#xff0c;其實就是用el-upload組件來實現上傳&#xff0c;只是換了樣式&#xff0c;和圖片上傳一樣 <el-form-item label"選擇文件"><el-input placeholder"請選擇文件" v-model"form.file" disabled style"width: 45…

java 使用log4j顯示到界面和文件 并格式化

1.下載log4j jar包https://dlcdn.apache.org/logging/log4j/2.20.0/apache-log4j-2.20.0-bin.zip 2. 我只要到核心包 &#xff0c;看需要 sources是源碼包&#xff0c;可以看到說明。在IDEA里先加入class jar后&#xff0c;再雙擊這個class jar包或或右鍵選Navigate ,Add ,…

android.system.ErrnoException: open failed: EPERM (Operation not permitted)

android 10(Q)開始增加了沙盒機制&#xff0c;不能直接把文件保存到/sdcard目錄下&#xff0c;只能保存到APP專屬目錄下&#xff1b;AndroidManifest.xml在標簽下增加屬性【android:requestLegacyExternalStorage“true”】可以暫時保存到/sdcard路徑下&#xff0c;但是Android…

Revit SDK 介紹:PanelSchedule 配電盤明細表

前言 這個例子介紹 Revit 的配電盤明細表&#xff0c;PanelSchedule。Revit 的電器專業在國內用的并不是十分廣泛&#xff0c;但從功能上來說還是比較完整的。 內容 這個例子里有三個命令&#xff1a; PanelScheduleExport - 導出配電盤明細表InstanceViewCreation - 創建配…

【0基礎學爬蟲】爬蟲基礎之網絡請求庫的使用

大數據時代&#xff0c;各行各業對數據采集的需求日益增多&#xff0c;網絡爬蟲的運用也更為廣泛&#xff0c;越來越多的人開始學習網絡爬蟲這項技術&#xff0c;K哥爬蟲此前已經推出不少爬蟲進階、逆向相關文章&#xff0c;為實現從易到難全方位覆蓋&#xff0c;特設【0基礎學…

【Visual Studio Code】--- Win11 C盤爆滿 修改 Code 插件數據和緩存的保存路徑

Win11 C盤爆滿 修改 Code 插件數據和緩存的保存路徑 一、概述二、修改 Code 插件數據和緩存的保存路徑 一、概述 一個好的文章能夠幫助開發者完成更便捷、更快速的開發。書山有路勤為徑&#xff0c;學海無涯苦作舟。我是秋知葉i、期望每一個閱讀了我的文章的開發者都能夠有所成…

領航優配:EFT交易是什么意思?

EFT買賣是一種電子資金搬運買賣方法&#xff0c;EFT代表電子資金搬運&#xff0c;將現金從一個銀行賬戶搬運到另一個銀行賬戶。盡管這種買賣方法已經存在了幾十年&#xff0c;但隨著技能的開展&#xff0c;越來越多的人開始使用它。 從技能視點&#xff0c;EFT買賣是經過計算機…

【C語言】memset()函數

一.memset()函數簡介 我們先來看一下cplusplus.com - The C Resources Network網站上memset()函數的基本信息&#xff1a; 1.函數功能 memset()函數的功能是:將一塊內存空間的每個字節都設置為指定的值。 這個函數通常用于初始化一個內存空間&#xff0c;或者清空一個內存空間…

elementui form組件出現英文提示

今天讓解決一個bug&#xff0c;是表單組件提示詞會出現英文。 問題情景如下&#xff1a; 有時會出現中文&#xff0c;有時會出現英文。 解決方法&#xff1a; 經查看&#xff0c;代碼采用的是elementui的form組件&#xff0c;在el-form-item中使用了required屬性&#xff0c;同…

html的語義化

說說對 html 語義化的理解 去掉或者丟失樣式的時候能夠讓頁面呈現出清晰的結構有利于 SEO&#xff1a;和搜索引擎建立良好溝通&#xff0c;有助于爬蟲抓取更多的有效信息&#xff1a;爬蟲依賴于標簽來確定上下文和各個關鍵字的權重&#xff1b;方便其他設備解析&#xff08;如屏…

Fiddler

基礎 Fiddler 相當于一個 “代理”,瀏覽器訪問瀏覽器頁面時&#xff0c;就會把HTTP請求先發給Fiddler&#xff0c;Fiddler 再把請求轉發給瀏覽器的服務器&#xff0c;當瀏覽器服務器返回數據時&#xff0c;Fiddler拿到返回數據&#xff0c;再把數據交給瀏覽器。 主界面 刪除…

Github上git lfs oid sha256文件無法下載的解決方案

問題&#xff1a;github上sha文件無法下載&文件超出限制 當我克隆Github上的一個庫時&#xff0c;其中有一個包的內容格式如下&#xff1a; version https://git-lfs.github.com/spec/v1 oid sha256:一堆數字和字母 size 一堆數字 這堆東西類似百度網盤的下載鏈接和密碼&a…

設計HTML5表單

HTML5基于Web Forms 2.0標準對HTML4表單進行全面升級&#xff0c;在保持簡便、易用的基礎上&#xff0c;新增了很多控件和屬性&#xff0c;從而減輕了開發人員的負擔。表單為訪問者提供了與網站進行互動的途徑&#xff0c;完整的表單一般由控件和腳本兩部分組成。 1、認識HTML…