検索

既存のWebアプリにViteを追加します

「Veet」と発音されるViteは、その速度と使いやすさで有名な現代のJavaScriptバンドラーです。最小限の構成を必要とする強力なツールですが、広範なカスタマイズオプションを提供します。この記事では、既存のプロジェクトを別のバンドラー(Webpackなど)からViteに移行していることを詳しく説明しています。新しいプロジェクトについては、公式のVite文書を参照してください。レガシーの移行であっても、その構造をよりよく理解するために、単純なViteプロジェクトの足場を最初に推奨します。

WebpackからViteへの移行

このガイドは、かなりの長年のWebpackプロジェクトを移行する経験を反映しています。このプロセスは、移行中のViteの構成機能を強調しています。

Viteの不要なWebパック構成

Viteは本質的に多くのタスクを処理し、通常、広範なWebpack構成を必要とします。これにより、多くの一般的なWebpackプラグインと設定が必要になります。

静的資産処理

Webpackは、静的資産(画像、フォントなど)をロードするために明示的な構成を必要とすることがよくあります。

 {
  テスト:/\ .(png|jpg|gif| svg| eot|woff2|ttf )$/
  使用: [
    {
      ローダー:「ファイルローダー」
    }
  ]
}

Viteはこれを自動的に管理します。

スタイリング(CSS/SCSS)

Webpackのスタイリング構成は複雑になる可能性があります。

 {
  テスト:/\.s?css$/、
  使用:[minicssextractplugin.loader、 "css-roader"、 "sass-roader"]]
}、

// 後で

new MinicsSextractPlugin({filename: "[name]  -  [contenthash] .css"})、

ViteはCSSとSCSをネイティブにサポートします。 SASSをインストールするだけで、Viteは残りを処理します。

輸送(TypeScript/JSX)

webpackがTypeScriptとJSXのトランスピレーションが必要です。

 {
  テスト:/\ .(t|j)sx?$/、
  除外: /node_modules /、
  ローダー:「バベルローダー」
}、

...対応するバベル構成を備えています。 Viteは、このすぐに使えるボックスを処理し、最新のJavaScript機能とTypeScriptをサポートしています。プラグインは、古いブラウザのサポートに利用できます。

ノードモジュール解像度

webpackには、 node_modulesを解決するための明示的な構成が必要です。

解決する: {
  モジュール:[path.resolve( "./ node_modules")]]
}

Viteはこれを自動的に処理します。

生産/開発モード

Webpackは多くの場合、 modeを使用して環境を区別します。

モード:isprod? 「生産」:「開発」、

Viteは個別のコマンド(開発用のvitevite build for Production)を使用します。

ファイル拡張子

Webpackでは、ファイル拡張機能を指定する必要があることがよくあります。

解決する: {
  拡張機能:[".ts"、 ".tsx"、 ".js"]、
}

Viteは一般的な拡張機能を自動的に処理します。

ロールアッププラグインの互換性

多くのロールアッププラグインはViteと互換性があり、既存のプラグインのスムーズな遷移を提供します。互換性情報については、Viteドキュメントを参照してください。

最初のViteプロジェクトを設定します

既存のプロジェクトを移行するには、JavaScriptエントリファイルを参照するHTMLエントリポイント( index.htmlなど)から始めます。必要なプラグインをインストールします(例: @vitejs/plugin-react for React Projects)。 vite.config.tsファイルを作成します:

 {vite "から{defineconfig}をインポートします。
「@vitejs/プラグインの反応」からのImport React;

デフォルトのデフォルトdefineconfigをエクスポートする({
  プラグイン:[React()]
});

NPMスクリプトを追加:

 「dev」:「vite」、
「ビルド」:「Vite Build」、
「プレビュー」:「Vite Preview」、

npm run devで開発サーバーを開始します。

高度な構成:エイリアス、環境変数、プロキシ

エイリアス

WebPackエイリアスは、 resolve.aliasを使用してViteで複製できます。

解決する: {
  エイリアス:{
    jscolor:path.resolve( "./ util/jscolor.js")、
    アプリ:path.resolve( "./ app")、
    // ...その他のエイリアス
  }
}、

環境変数

Viteは、環境変数にimport.meta.env使用します。通常、 VITE_が付いています。レガシープロジェクトの場合、既存のprocess.env変数を処理するためにカスタムプラグインが必要になる場合があります。

サーバーのプロキシ

開発中にサービスをバックエンドするリクエストをプロキシするため:

サーバー:{
  プロキシ: {
    "/graphql": "http:// localhost:3001"
  }
}

建物ライブラリ

ライブラリを構築するには、 vite.config.tsbuildオプションを構成します:(簡潔にするために省略された例ですが、元の例と同様)

結論

Viteは、Webアプリケーション開発の大幅な改善を提供し、速度と使いやすさを提供します。ロールアッププラグインとの機能と互換性により、既存のプロジェクトを比較的簡単に移行します。

以上が既存のWebアプリにViteを追加しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
毎週のプラットフォームニュース:Galaxy Store、Tappable Stories、CSS SubgridのWebアプリ毎週のプラットフォームニュース:Galaxy Store、Tappable Stories、CSS SubgridのWebアプリApr 14, 2025 am 11:20 AM

今週のラウンドアップ:Firefoxは錠前屋のような力を獲得し、Samsung' s Galaxy StoreがプログレッシブWebアプリをサポートし始め、CSS SubgridはFirefoxで出荷しています

毎週のプラットフォームニュース:インターネットエクスプローラーモード、検索コンソールの速度レポート、通知プロンプトの制限毎週のプラットフォームニュース:インターネットエクスプローラーモード、検索コンソールの速度レポート、通知プロンプトの制限Apr 14, 2025 am 11:15 AM

今週のラウンドアップ:Internet ExplorerがEdgeに進み、Google Search Consoleが新しい速度レポートを宣伝し、FirefoxがFacebookの通知を提供します

CSSカスタムプロパティを使用したスコープのパワー(および楽しい)CSSカスタムプロパティを使用したスコープのパワー(および楽しい)Apr 14, 2025 am 11:11 AM

おそらく、CSS変数に少なくとも少し精通しているでしょう。そうでない場合は、ここに2秒の概要があります:それらは本当にカスタムプロパティと呼ばれます、あなたは設定します

私たちはプログラマーです私たちはプログラマーですApr 14, 2025 am 11:04 AM

建物のウェブサイトはプログラミングです。 HTMLとCSSの作成はプログラミングです。私はプログラマーです。ここでCSS-Tricksを読んでいる場合、あなたは'

サイトから未使用のCSSをどのように削除しますか?サイトから未使用のCSSをどのように削除しますか?Apr 14, 2025 am 10:59 AM

ここに'私が前もって知るのが好きなこと:これは難しい問題です。あなたがここに上陸した場合、あなたはあなたが伝えることができるツールを指し示すことを望んでいるので、あなたが'

ピクチャーインピクチャーWeb APIの紹介ピクチャーインピクチャーWeb APIの紹介Apr 14, 2025 am 10:57 AM

Picture-in-Pictureは、2016年にMacos SierraをリリースしたSafariブラウザでWebに初めて登場しました。ユーザーがポップできるようになりました。

ギャツビーを使用してぼやけた効果のために画像を整理して準備する方法ギャツビーを使用してぼやけた効果のために画像を整理して準備する方法Apr 14, 2025 am 10:56 AM

Gatsbyは、画像の処理と処理の素晴らしい仕事をしています。たとえば、手動で画像の最適化で時間を節約するのに役立ちます

ああ、パディングの割合は親要素の幅に基づいていますああ、パディングの割合は親要素の幅に基づいていますApr 14, 2025 am 10:55 AM

私は今日、私の頭の中で完全に間違っていたことをパーセンテージベース(%)のパディングについて学びました!パディングの割合はに基づいているといつも思っていました

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

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

ホットツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

MantisBT

MantisBT

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

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境