最近、レガシー プロジェクトで重大かつ高リスクの脆弱性を持つパッケージを減らすことを目的としたチケットがスプリントに追加されました。このタスクには、Vue CLI をビルド ツールとして使用する Vue 2 プロジェクトを Vite に移行することが含まれます。
これは、テクノロジー スタックを最新化し、Vite が提供するパフォーマンス上の利点を活用する絶好の機会です。この記事では、移行を完了するために私が実行した主な手順を共有します。
Viteとは何ですか?
Vite (「ヴィート」と発音) は、最新の Web プロジェクトに高速 (実際に高速) で合理化された開発エクスペリエンスを提供するように設計されたビルド ツールです。
Vite を使用すると、ビルド時間が大幅に短縮され、驚くほど高速な開発サーバーが得られ、構成プロセスが簡素化されます。
移行手順
1. package.json を更新します
最初のステップは、プロジェクトからすべての Vue CLI 依存関係を削除することです。これには、Babel 関連のパッケージ、babel.config.js 構成ファイル、core-js の依存関係が含まれます。
<code>//package.json "@vue/cli-plugin-babel": "~5.0.8", //remove "@vue/cli-plugin-e2e-nightwatch": "~5.0.8", //remove "@vue/cli-plugin-eslint": "~5.0.8", //remove "@vue/cli-plugin-unit-jest": "~5.0.8", //remove "@vue/cli-service": "~5.0.8", //remove "core-js": "^3.6.4", //remove "@babel/core": "^7.8.4", //remove "babel-core": "^7.0.0-bridge.0", //remove "babel-jest": "^25.1.0", //remove </code>
ESLint 構成で「babel-eslint」をパーサーとして使用している場合は、それを置き換える必要があります。
<code>//package.json "babel-eslint": "^10.0.3", //remove</code>
ESLint 構成を .eslintrc から最新の eslint.config.mjs 形式に移行し、ESLint をバージョン 8 に更新しました。これを強くお勧めします。
<code>npm install eslint@8 eslint-plugin-vue@8 --save-dev npx @eslint/migrate-config .eslintrc.js</code>
これらの依存関係をクリーンアップした後、Vite と Vue 統合用のプラグインを追加しました。
<code>npm install vite @vitejs/plugin-vue2 --save-dev</code>
2. Vite をセットアップします
他の多くのライブラリと同様、Vite はプロジェクトのルート ディレクトリにある構成ファイル (vite.config.js) を使用して、ビルドおよび開発オプションを定義します。ここから簡単に始められます:
<code>import { defineConfig } from 'vite' import vue2 from '@vitejs/plugin-vue2' export default defineConfig({ plugins: [vue2()], resolve: { extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json', '.vue'], alias: { '@': fileURLToPath(new URL('./src', import.meta.url)) } } });</code>
3.index.html を移動して更新します
Vue CLI では、index.html ファイルは通常、パブリック フォルダーにあります。ただし、Vite はそれがプロジェクトのルート ディレクトリにあることを想定しています。ファイルをルート ディレクトリに移動し、必要に応じてパス参照を更新します。
<code>mv public/index.html index.html</code>
<code><link href="<%=%20BASE_URL%20%>favicon.ico" rel="icon"> <link href="/favicon.ico" rel="icon"></code>
自動挿入が行われなくなったため、main.js を含めます。
4. 環境変数を更新します
Vite は環境変数を異なる方法で処理します。必ず .env ファイルを更新または作成し、公開するすべての変数に VITE_ プレフィックスを追加してください。例:
<code>VITE_API_URL=https://api.example.com</code>
<code>// router/index.js //remove base: process.env.BASE_URL, //add base: import.meta.env.BASE_URL,</code>
5. スクリプトを更新します
最後に、Vue CLI の代わりに Vite バイナリを使用するように package.json のスクリプトを更新しました。現在は次のようになります:
<code>//from "scripts": { "serve": "vue-cli-service serve --port 8084", "dev": "npm run serve", "build": "vue-cli-service build", "test:unit": "vue-cli-service test:unit", "test:e2e": "vue-cli-service test:e2e --headless", "lint": "vue-cli-service lint", "test": "npm run test:unit && npm run test:e2e" }, //to "scripts": { "serve": "vite --port 8084", "dev": "npm run serve", "build": "vite build", "test:e2e": "nightwatch --headless", "test:unit": "vitest --run", "test": "npm run test:unit && npm run test:e2e", "lint": "eslint ." },</code>
これらの変更により、Vite で Vue 2 プロジェクトを実行できるようになり、Vite がもたらすすべてのメリット、特にビルド パフォーマンスの向上を享受できるようになりました。
次のステップ
次回の記事では、Vue CLI プラグインを使用せずに Nightwatch を有効にし、Jest を Vitest に移行する方法を共有します。乞うご期待!
ご質問がある場合、または Vite に関するご自身の経験を共有したい場合は、お気軽にコメントを残してください。 ?
以上がレガシー プロジェクトを Vue CLI から Vite に移行するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

現実世界におけるJavaScriptのアプリケーションには、サーバー側のプログラミング、モバイルアプリケーション開発、モノのインターネット制御が含まれます。 2。モバイルアプリケーションの開発は、ReactNativeを通じて実行され、クロスプラットフォームの展開をサポートします。 3.ハードウェアの相互作用に適したJohnny-Fiveライブラリを介したIoTデバイス制御に使用されます。

私はあなたの日常的な技術ツールを使用して機能的なマルチテナントSaaSアプリケーション(EDTECHアプリ)を作成しましたが、あなたは同じことをすることができます。 まず、マルチテナントSaaSアプリケーションとは何ですか? マルチテナントSaaSアプリケーションを使用すると、Singの複数の顧客にサービスを提供できます

この記事では、許可によって保護されたバックエンドとのフロントエンド統合を示し、next.jsを使用して機能的なedtech SaaSアプリケーションを構築します。 FrontEndはユーザーのアクセス許可を取得してUIの可視性を制御し、APIリクエストがロールベースに付着することを保証します

JavaScriptは、現代のWeb開発のコア言語であり、その多様性と柔軟性に広く使用されています。 1)フロントエンド開発:DOM操作と最新のフレームワーク(React、Vue.JS、Angularなど)を通じて、動的なWebページとシングルページアプリケーションを構築します。 2)サーバー側の開発:node.jsは、非ブロッキングI/Oモデルを使用して、高い並行性とリアルタイムアプリケーションを処理します。 3)モバイルおよびデスクトップアプリケーション開発:クロスプラットフォーム開発は、反応および電子を通じて実現され、開発効率を向上させます。

JavaScriptの最新トレンドには、TypeScriptの台頭、最新のフレームワークとライブラリの人気、WebAssemblyの適用が含まれます。将来の見通しは、より強力なタイプシステム、サーバー側のJavaScriptの開発、人工知能と機械学習の拡大、およびIoTおよびEDGEコンピューティングの可能性をカバーしています。

JavaScriptは現代のWeb開発の基礎であり、その主な機能には、イベント駆動型のプログラミング、動的コンテンツ生成、非同期プログラミングが含まれます。 1)イベント駆動型プログラミングにより、Webページはユーザー操作に応じて動的に変更できます。 2)動的コンテンツ生成により、条件に応じてページコンテンツを調整できます。 3)非同期プログラミングにより、ユーザーインターフェイスがブロックされないようにします。 JavaScriptは、Webインタラクション、シングルページアプリケーション、サーバー側の開発で広く使用されており、ユーザーエクスペリエンスとクロスプラットフォーム開発の柔軟性を大幅に改善しています。

Pythonはデータサイエンスや機械学習により適していますが、JavaScriptはフロントエンドとフルスタックの開発により適しています。 1. Pythonは、簡潔な構文とリッチライブラリエコシステムで知られており、データ分析とWeb開発に適しています。 2。JavaScriptは、フロントエンド開発の中核です。 node.jsはサーバー側のプログラミングをサポートしており、フルスタック開発に適しています。

JavaScriptは、最新のブラウザにすでに組み込まれているため、インストールを必要としません。開始するには、テキストエディターとブラウザのみが必要です。 1)ブラウザ環境では、タグを介してHTMLファイルを埋め込んで実行します。 2)node.js環境では、node.jsをダウンロードしてインストールした後、コマンドラインを介してJavaScriptファイルを実行します。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

ドリームウィーバー CS6
ビジュアル Web 開発ツール

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。
