この記事では、Vite を使用して Vue 3 デスクトップ プロジェクトを開発する方法について説明します。 このプロジェクトでは、JavaScript を使用してクロスプラットフォームのデスクトップ アプリケーションを構築するための最も人気のあるフレームワークの 1 つである Electron が使用されます。 そのため、VSCode、Slack、Twitch など、多くの人気アプリケーションが Electron を使用しています。 まず何をすべきか見てみましょう: これは単なる基本的な Vite テンプレートですが、ブラウザではなく専用のプログラムで実行されます。 これは、独自のデスクトップ アプリケーションを構築するために必要な手順です。 開発プロセスは以下のとおりです。 基本的なViteプログラムを作成するまず、Vite アプリケーションを作成します。 ここではViteの仕組みについては詳しく説明しません。 ターミナルで次のコマンドを実行します。 npm init @vitejs/app cd [プロジェクト名] npmインストール 完了しました。まずはブラウザで試してください。 ターミナルで npm run dev コマンドを実行するだけです。次に、ブラウザでローカル アドレスを開くと、次の画面が表示されます。 問題ありません。今度は、Electron を設定に追加します。 ViteプロジェクトにElectronを追加するここでは、Electron の公式クイックスタートに従い、Vite アプリケーションにいくつかの調整を加えます。 まずElectronをインストールします。ターミナルに次のコマンドを入力します。 Electronをインストールする nnpm install --save-dev electron 次に、Electron のマニュアルを見てみましょう。 マニュアルによれば、単純な Electron 構成には 4 つのファイルが必要です。
プロジェクトには main.js ファイルと index.html ファイルがあるように見えますが、これらは Electron ファイルではなく Vite ファイルです。 Vite ファイルは Vite プログラムを実行するためにのみ使用できるため、別の Electron ファイルも必要です。 main.js はデスクトップ アプリケーションを作成するために使用され、index.html に読み込まれます。また、構築した Vite アプリケーション コードも含める必要があります。 Vite プログラムの構築まず、Vite プログラムを構築する必要があります。 Electron と統合する必要があるため、追加の構成が必要です。プロジェクトをビルドするときに、最終的な JavaScript および CSS ファイルへのすべての参照が正しいパスを指していることを確認する必要があります。 ビルドされる Vite プロジェクトは、次の構造の dist ディレクトリを作成します。 しかし、Electron コードはプロジェクトのルート ディレクトリにあるため、プロジェクト全体のベースを dist フォルダーに設定する必要があります。 これは、パス ライブラリを使用して vite.config.js ファイル内のベース プロパティを設定することで実現できます。 //vite.config.js 'vite' から {defineConfig} をインポートします '@vitejs/plugin-vue' から vue をインポートします 定数パス = require('path') // https://vitejs.dev/config/ デフォルトのdefineConfigをエクスポートする({ ベース: path.resolve(__dirname, './dist/'), プラグイン: [vue()] }) これで、ターミナルで npm run build を実行して、dist ディレクトリを作成できます。 Electronのmain.jsの設定次のステップは、プロジェクトのルート ディレクトリに main.js ファイルを作成することです。 作成したら、Electron クイック スタート ガイドからコードをコピーして貼り付けるだけです。 index.html をロードしている場所で、dist ディレクトリ内のファイルを使用するように dist/index.html に変更します。 したがって、main.js の最終コードは次のようになります。 //メイン.js const { app, BrowserWindow } = require('electron') 定数パス = require('path') 関数createWindow(){ const win = 新しいブラウザウィンドウ({ 幅: 800, 高さ: 600, ウェブ設定: { プリロード: path.join(__dirname, 'preload.js') } }) win.loadFile('dist/index.html') } app.whenReady().then(() => { ウィンドウの作成() app.on('activate', () => { (BrowserWindow.getAllWindows().length === 0)の場合{ ウィンドウの作成() } }) }) app.on('ウィンドウがすべて閉じました', () => { (process.platform !== 'darwin')の場合{ アプリ終了() } }) preload.js を作成して記述します。次に、プロジェクトのルート ディレクトリに preload.js ファイルを作成し、今度は何も変更せずにクイック スタート コードを再度使用します。 //プリロード.js window.addEventListener('DOMContentLoaded', () => { const replaceText = (セレクター、テキスト) => { const 要素 = document.getElementById(セレクタ) if (要素) element.innerText = テキスト } for (const type of ['chrome', 'node', 'electron']) { replaceText(`${type}-version`, process.versions[type]) } }) package.json を変更するもうすぐ完了です。Electron コマンドを実行できるように、package.json ファイルにいくつかの最終的な変更を加えるだけです。 まず、main プロパティを設定する必要があります。デフォルトでは、Electron はルート ディレクトリで index.js ファイルを探して実行しますが、ファイルの名前が main.js であるため、package.json で定義する必要があります。 //パッケージ.json { "名前": "vite-electron", "バージョン": "0.0.0", "main": "main.js", // この行... } 次に、Electron を実行する方法を設定し、スクリプト セクションに electron:start という名前の新しいスクリプトを作成し、その内容を electron .. にします。 //パッケージ.json { "名前": "vite-electron", "バージョン": "0.0.0", "メイン": "main.js", 「スクリプト」: { "dev": "vite", "ビルド": "vite ビルド", "serve": "vite プレビュー", "electron:start": "electron ." // ここ}, ... } コードはこれだけです。 最後に、ターミナルで npm run electron:start コマンドを実行すると、次の結果が表示されます。 デスクトッププログラムがついに完成しました。とても簡単ですよ〜 最後に最近、Vue を改良しているときに、ハイエンドの Vue3+TS チュートリアルを見つけました。 無料でディガーと共有してください。クリックしてチュートリアルをご覧ください Vue3 デスクトップ アプリケーションの構築方法に関するこの記事はこれで終わりです。Vue3 デスクトップ アプリケーションに関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: MySQL の組み込み関数 find_in_set を使用した効率的なあいまい検索の詳細な説明
>>: CentOSはローカルyumソース/Alibaba Cloud yumソース/163yuanソースを設定し、yumソースの優先順位を設定します。
1. マルチヘッダーテーブルコードコードをコピーコードは次のとおりです。 <!DOCTYPE ...
目次1. 基本を理解する2. システム環境を確認する3. ftpコマンドをインストールする[オプショ...
サーバーデータがSSL証明書を使用して暗号化および認証されていない場合、ユーザーのデータはプレーンテ...
1. フローティングとは何ですか?フローティングは、その名の通り、浮遊することを意味します。要素がド...
位置が絶対の場合、関連する属性のパーセンテージは、参照先の要素 (包含ブロック) を基準として計算さ...
日常の開発では、データベースの追加、削除、変更、クエリが一般的に行われるため、Mysql で NUL...
方法 1: スクリプト方式を使用する:共通ヘッダー ファイル head.js または共通フッター フ...
目次1. Node.jsとVue 2. ローカル開発環境でフロントエンドのVueプロジェクトを実行す...
目次1. インストールパッケージ(64ビット)をダウンロードする2. MySQLデータベースをインス...
序文日常の開発では、テキストの水平スクロール効果(一般にカルーセルと呼ばれる)によく遭遇します。これ...
1. 動的コンポーネント <!DOCTYPE html> <html> &l...
目次イベントループmiscroTask (マイクロタスク) UI レンダリング (重要なポイント)次...
CSS 変換は便利ですが、背景画像にはまだ適用されていません。この投稿では、背景画像を回転させたい場...
今日、データベース操作はますますアプリケーション全体のパフォーマンスのボトルネックになりつつあり、こ...
1. Navicat for MySQL 15をダウンロードするhttps://www.navica...