webpackでvue環境を構築する際の異常なエラーを解決する

webpackでvue環境を構築する際の異常なエラーを解決する

今日、webpack を使用して手動で環境を構築したところ、おかしなエラーが発生し、長い間次のステップに進むことができませんでした。

まず、package.jsonを設定します

//npm init -y を自動設定する

すべて順調です

次にwebpackツールをインストールします

npm で webpack をインストールします。webpack-cli --save-dev
  //またはnpm i webpack webpack-cli -DでもOK

webpackテストの実行

このステップで、コマンドラインにwebpackと入力してEnterキーを押すと、エラーが大量に報告され始めました。

その場合、最も速い方法は、ファイルを削除して再インストールすることです。 再度試してみても、同じエラーが報告され、混乱します。

webpack -V を出力したところ、バージョン番号すら出力されないことに気付きました。後から、webpack がグローバルにインストールされていないことが原因かもしれないと考えました。以前も使ったことがあるので、これは最も起こりにくい問題だと思います。

次に、webpackとwebpack-cliを再インストールするか、前の手順を実行して、srcファイルを手動で作成します。

4. webpackテストを実行する

CommonJS仕様: サーバーサイドモジュール化仕様に基づくノード出力

スロー: modules.exports
インポート: 必要

ES6 モジュール:

'' から xxx をインポート
エクスポートデフォルト {}

webpack はデフォルトで js および json ファイルの導入のみをサポートしているため、.css .png.html などの他のファイルタイプを JS に導入する場合は、解析用の適切なローダーをインストールする必要があります。

さまざまなローダー(ファイルパーサー)を構成する

Babel関連のインストール

BabelとReact関連のローダーをインストールする

cnpm と babel-loader @babel/core @babel/preset-env -D

CSSローダーをインストールする

npm i css-loader スタイルローダー -D
cnpm i css-loader スタイルローダー -D

HTMLプラグインをインストールする

npm と html-webpack-plugin -D を実行します。
cnpm と html-webpack-plugin -D

PS: [開発環境と本番環境にインストールされた依存関係の違い]

開発環境、つまり、プロジェクトのコーディング段階で必要な依存関係。これらは、--save-dev または -D コマンドを使用してインストールされる webpack ビルド ツール、babel ローダーなど、オンラインになった後は参照する必要はありません。

実稼働環境では、プロジェクトがオンラインになり、外部サービスを提供し始めた後も、jQuery ライブラリ、ルーティングなどの依存関係のサポートが必要になります。これらは、--save または -S コマンドを使用してインストールできます。
プロジェクトのルート ディレクトリに webpack.config.js 構成ファイルを作成し、次の構成を順番に完了します。

(1)構成エントリ

module.exports = { エントリ:'./src/index.js' }

(2)出力の設定

定数パス = require('path');
      モジュール.エクスポート = {
          // ...
          出力: {
              パス: path.resolve(__dirname, 'dist'),
              ファイル名: 'main.js'
          }
      }

(3)構成ローダー

モジュール.エクスポート = {
    // ...
    モジュール:{
        ルール:[
            {
                テスト: /\.css$/,
                使用:['style-loader','css-loader']
            },
            {
                test: /\.js?$/, // jsx/js ファイルの正規表現 exclude: /node_modules/, // node_modules フォルダーを除外 use:{
                    // ローダーは babel です
                    ローダー: 'babel-loader',
                    オプション:
                        // babel エスケープ設定オプション babelrc: false,
                        プリセット: [
                            [require.resolve('@babel/preset-env'), {モジュール: false}]
                        ]、
                        キャッシュディレクトリ: true
                    }
                }
            }
        ]
    }
}

(4)プラグインの設定

HtmlWebPackPlugin は 'html-webpack-plugin' を必要とします。
モジュール.エクスポート = {
	// ...
	プラグイン:[
		新しいHtmlWebPackプラグイン({
			テンプレート: 'public/index.html',
			ファイル名: 'index.html',
			注入: 真
		})
	]
}

パッケージ化コマンドを実行する

npx webpack --mode 開発

パッケージ化操作を実行するには、npm run build コマンドを構成します。

//package.jsonファイルにビルド項目を追加{
    「スクリプト」: {
        "ビルド": "webpack --mode プロダクション"
    }
}

パッケージ化コマンドを実行します。

npm 実行ビルド

ローカルサーバーを構築する

依存関係をインストールする

cnpm と webpack-dev-server -D

webpack.config.js ファイルでローカル サービス関連の情報を構成する

モジュール.エクスポート = {
          // ...
          開発サーバー: {
              コンテンツベース: './dist',
              ホスト: 'localhost',
              ポート: 3000
          }
      }

package.jsonファイルで起動コマンドを設定する

{
    「スクリプト」: {
        "開始": "webpack-dev-server --mode 開発 --open"
    }
}

サービス開始コマンドを実行する

npm スタート

そして統合

Vueとの統合

vue-loader: vue ファイルを解析する vue-template-compiler

      インストール: npm install vue-loader vue-template-compiler -D
      webpack ファイルを設定します: {test:/\.vue$/,use:['vue-loader']},

      vueLoaderPlugin プラグインをインスタンス化します。const { VueLoaderPlugin } = require('vue-loader')
      プラグインのインスタンス化を追加します。
       },
          プラグイン: [
              新しい VueLoaderPlugin()
          ]

より少ない統合

インストール: npm install less-loader less -D
構成:
 モジュール: {
        ルール:
            {test:/\.less$/,use:['style-loader','css-loader','less-loader']},
        ]
    },

Sassとの統合

インストール: npm install sass-loader node-sass -D
構成:
 モジュール: {
        ルール:
            {test:/\.(scss|sass)$/、use:['style-loader','css-loader','sass-loader']}、
        ]
    },

Sass 共通構文: https://www.jb51.net/article/222337.htm

vue-routerで

インストール: npm install vue-router -D

vuexとの統合

インストール: npm install vuex -D

これで、webpack で vue 環境を構築する際の例外エラーの解決に関するこの記事は終了です。webpack で vue 環境を構築する際のエラーに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • vue init webpack の依存関係のダウンロードが停止する問題を解決する
  • Maptalks+three.js+vue webpackは、2次元マップに3次元モデルを貼り付ける操作を実装します。
  • vue+webpackプロジェクトのクロスドメインインターフェースの問題を解決する
  • Webpackを使ったVue3開発環境の構築手順を詳しく解説
  • webpack+vue-cil での ProxyTable 設定インターフェース アドレス プロキシ操作
  • Vue webpack ビルド リソース相対パスの問題と解決策

<<:  Docker で Zookeeper をインストールする (スタンドアロンおよびクラスター)

>>:  MySql ビュー、トリガー、ストアド プロシージャに関する簡単な説明

推薦する

ウェブサイトアイコンを追加するにはどうすればいいですか?

最初のステップは、アイコン作成ソフトウェアを準備することです。まず、いわゆるアイコンは拡張子 .ic...

CSS3の新しいセレクタの例

構造(位置)擬似クラスセレクタ(CSS3) :first-child : 指定されたセレクタは、親要...

Nginxの現在の制限設定の詳細な説明

この記事では、最も単純なものから最も複雑なものまで、Nginx の現在の制限構成を例を使って説明しま...

MySQL DML ステートメントの概要

DML 操作とは、データベース内のテーブル レコードに対する操作を指し、主にテーブル レコードの挿入...

Vueナンバープレート入力コンポーネントの使い方の詳しい説明

参考までに、シンプルなナンバープレート入力コンポーネント(vue)です。具体的な内容は次のとおりです...

IE で ClearType をオンにした後の透明フォントの問題の解決方法

IE で ClearType をオンにした後に発生する透明フォントの問題を解決するには、透明要素に背...

CSSボックスの表示/非表示とトップレイヤーの実装コード

.imgbox{ 幅: 1200ピクセル; 高さ: 612px; 右マージン: 自動; 左マージン...

Linux環境にJDKとTomcatをインストールする詳細な手順

目次1. JDKをインストールする手動インストール2. トムキャット1. JDKをインストールする注...

Linux プロセス管理ツール スーパーバイザーのインストールと設定のチュートリアル

環境: CentOS 7公式ドキュメント: http://supervisord.org/インストー...

JavaScript における var、let、const の違いの詳細な説明

目次グローバル変数として可変ホイスト一時的なデッドゾーンブロックスコープ重複したステートメント宣言さ...

Linux での MySQL 8.0.25 のインストールと設定のチュートリアル

LinuxにMySQL 8.0.25をインストールするための最新のチュートリアルを参考にしてください...

HTML でスクロールバーを使用する際のヒントを共有する

今日、牛南ニュースリリースシステムについて学んでいたとき、牛南先生はスクロールバーに関するいくつかの...

mysql5.6 以前のデータベースで json をクエリする方法

MySQLにデータを保存するとき、乱雑であまり使用されないデータがJSONフィールドに投げ込まれるこ...

CentOS に MySQL をインストールしてリモート アクセスを設定する方法

1. MySQLリポジトリソースをダウンロードする$ wget http://repo.mysql....

MySQL マルチテーブルクエリの詳細な説明

よく食べて十分に休息を取るというのは簡単なことのように思えますが、実際に実行するのはそれほど簡単では...