ホームページ ウェブフロントエンド jsチュートリアル vue2.0 リソース ファイル アセットと静的使用手順

vue2.0 リソース ファイル アセットと静的使用手順

May 02, 2018 am 09:55 AM
assets static

今回は、vue2.0 リソース ファイル アセットと静的の使用方法について説明します。vue2.0 リソース ファイル アセットと静的を使用する際の 注意事項 は何ですか? 以下は実際的なケースです。

リソースファイル処理

プロジェクト構造には、2 つのリソース ファイル パス、つまり src/assets と static/ があります。それでは、この 2 つの違いは何でしょうか?

Webpack されたリソース

この質問に答えるには、まず webpack が静的リソースをどのように処理するかを理解する必要があります。 *.vue コンポーネントでは、すべてのテンプレートと CSS が vue-html-loader と css-loader によって解析され、リソースの URL が検索されます。

たとえば、

background: url(./logo.png)、"./logo.png" は両方とも相対リソース パスになります。 Webpack によってモジュールの依存関係に解析されます。

logo.pngは

JavaScriptではないため、モジュールの依存関係とみなした場合、url-loaderとfile-loaderを使って処理する必要があります。 テンプレートにはこれらのローダーがすでに構成されているため、展開の問題を心配することなく相対/モジュール パスを使用できます。これらのリソースはビルド時にインライン化/コピー/名前変更される可能性があるため、基本的にはソース コードの一部となります。このため、webpack によって処理される静的リソースを、他のソース ファイルと同様に /src パスの下に配置することをお勧めします。実際、それらをすべて /src/assets の下に置く必要さえありません。 modules/components の使用に基づいてファイル構造を整理できます。たとえば、各コンポーネントとその静的リソースを独自のディレクトリに配置できます。

リソース処理ルール

相対 URL (例: ./assets/logo.png) はモジュールの依存関係として解釈されます。これらは、Webpack 出力設定に基づいて自動的に生成された URL に置き換えられます。プレフィックスのない URL (例:assets/logo.png) は相対 URL として扱われ、./assets/logo.png に変換されます

プレフィックスが付いている URL は、

require('some -module と同様) として扱われます。 /image.png')。Webpack のモジュール処理構成を利用したい場合は、このプレフィックスを使用します。たとえば、アセットのパス解決がある場合は、 を使用して、解像度が正しいことを確認する必要があります。ルート ディレクトリに相対的な URL (例: /assets/logo.png) は処理されません

JavaScript でリソース パスを取得します

Webpack が正しいリソース パスを返すようにするには、require('./relative) を使用する必要があります。 /path/to/file.jpg') は、file-loader によって解析され、処理された URL が返されます。例:

computed: {
 background () {
  return require('./bgs/' + this.id + '.jpg')
 }
}
ログイン後にコピー
上記の例では、./bgs/ パスにあるすべてのイメージが最終ビルドに含まれることに注意してください。これは、Webpack が実行時にどのイメージが使用されるかを推測できないため、すべてが含まれることになります。そのうちの。

「実際の」静的リソース

比較として、static/ の下にあるファイルは Webpack によって処理されません。同じファイル名が使用され、最終パスに直接コピーされます。これらのファイルを参照するには、config.js に追加された build.assetsPublicPath および build.assetsSubDirectory に応じて、絶対パスを使用する必要があります。

たとえば、以下のデフォルト値は次のとおりです:

// config/index.js
module.exports = {
 // ...
 build: {
  assetsPublicPath: '/',
  assetsSubDirectory: 'static'
 }
}
ログイン後にコピー
static/ ディレクトリに配置されたすべてのファイルは、絶対 URL /static/[ファイル名] を使用して参照される必要があります。 assetSubDirectoryの値をassetsに変更すると、これらのURLは/assets/[ファイル名]になります

この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、他の関連記事に注目してください。 PHP中国語ウェブサイトで!

推奨書籍:

HTML タグの JS 動的操作

React Router v4 の使用方法の詳細な説明

以上がvue2.0 リソース ファイル アセットと静的使用手順の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホット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ヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

vue3+vite アセットは動的に画像を導入し、パッケージ化後に間違った画像パスが表示されない問題を解決します。 vue3+vite アセットは動的に画像を導入し、パッケージ化後に間違った画像パスが表示されない問題を解決します。 May 10, 2023 pm 05:55 PM

vite の公式のデフォルト構成。リソース ファイルがアセット フォルダーにパッケージ化されている場合、ハッシュ値はイメージ名に追加されます。ただし、src="imgSrc" を通じて直接インポートされた場合、解析中に解析されません。パッケージ化すると、開発環境は正常にインポートされますが、パッケージ化後に表示されないという問題が発生します。実際には、リソース ファイルを wbpack でコンパイルする必要はありません。画像をpublic ディレクトリ。開発環境であっても本番環境であっても、イメージ パスの一貫性を保つためにルート ディレクトリを常に使用できます。これは webpack と一貫しています。これを見ると、おそらく問題は解決されます。本当に配置する必要がある場合は、 Vite のアセット内の静的ファイルを見てみましょう。

C言語におけるstaticの機能と使い方は何ですか? C言語におけるstaticの機能と使い方は何ですか? Jan 31, 2024 pm 01:59 PM

C 言語における static の役割と使用法: 1. 変数スコープ; 2. ライフサイクル; 3. 内部関数; 4. グローバル変数の変更; 5. 関数の変更; 6. その他の用途; 詳細な紹介: 1. 変数スコープの場合変数の前に static キーワードがある場合、変数のスコープは、変数が宣言されているファイルに制限されます。言い換えると、変数は「ファイル レベルのスコープ」であり、「」の発生を防ぐのに非常に役立ちます。変数の重複定義問題; 2. ライフサイクル、静的変数はプログラム実行開始時に一度初期化され、プログラム終了時に破棄されるなど。

Java で static、this、super、final を使用する方法 Java で static、this、super、final を使用する方法 Apr 18, 2023 pm 03:40 PM

1. static まず次のプログラムを見てください: publicclassHello{publicstaticvoidmain(String[]args){//(1)System.out.println("Hello, world!");//(2)}}セグメント プログラムは、Java を学習したことのあるほとんどの人には馴染みのあるものです。 Java を学習したことがなくても、C などの他の高級言語を学習したことがある場合でも、このコードの意味は理解できるはずです。これは単に「Hello, world」を出力するだけであり、他に用途はありませんが、静的キーワードの主な目的を示しています。

C言語のstaticキーワードの実践的な応用シナリオと使用スキル C言語のstaticキーワードの実践的な応用シナリオと使用スキル Feb 21, 2024 pm 07:21 PM

C 言語の static キーワードの実践的な応用シナリオと使用スキル 1. 概要 static は C 言語のキーワードであり、変数や関数を変更するために使用されます。その機能は、プログラムの実行中にライフサイクルと可視性を変更し、変数と関数を静的にすることです。この記事では、static キーワードの実際のアプリケーション シナリオと使用テクニックを紹介し、具体的なコード例を通じて説明します。 2. 静的変数により変数のライフ サイクルが延長される static キーワードを使用してローカル変数を変更すると、変数のライフ サイクルを延長できます。

Java 修飾子のabstract、static、finalの使用方法 Java 修飾子のabstract、static、finalの使用方法 Apr 26, 2023 am 09:46 AM

修飾子abstract (abstract) 1. 抽象はクラスを変更できる (1) 抽象によって変更されたクラスを抽象クラスと呼びます (2) 構文: abstractclass クラス名 {} (3) 特徴: 抽象クラスは個別にオブジェクトを作成できませんが、オブジェクトを作成することはできます。宣言される 抽象クラス名の参照名を参照する (4) 抽象クラスはメンバ変数とメンバ メソッドを定義できる (5) 抽象クラスにはコンストラクタがある サブクラス オブジェクトの作成に使用される場合、jvm はデフォルトで親クラス オブジェクトを作成する;抽象コンストラクタ メソッドが適用されるjvm が親クラス オブジェクトを作成するときに適用されます。 2. Abstract はメソッドを変更できる (1) asbtract によって変更されたメソッドを抽象メソッドと呼びます (2) 構文: アクセス修飾子の抽象戻り値

静電気の役割 静電気の役割 Jan 24, 2024 pm 04:08 PM

static の機能: 1. 変数; 2. メソッド; 3. クラス; 4. その他の用途; 5. マルチスレッド環境; 6. パフォーマンスの最適化; 7. シングルトン モード; 8. 定数; 9. ローカル変数; 10.メモリ レイアウトの最適化; 11. 繰り返しの初期化を避ける; 12. 関数で使用する。詳細な紹介: 1. 変数、静的変数 変数が静的として宣言されると、その変数はインスタンス レベルではなくクラス レベルに属します。つまり、オブジェクトがいくつ作成されても、静的変数は 1 つだけ存在し、すべてのオブジェクトが存在します。この静的変数などを共有します。

PHPの静的メソッドとは何ですか PHPの静的メソッドとは何ですか Oct 31, 2022 am 09:40 AM

php static static メソッドの「static」は、クラスをインスタンス化せずにこれらのプロパティとメソッドを直接呼び出すことができることを意味します。static は、クラスのプロパティとメソッドを変更するために使用されるキーワードであり、その使用構文は「class Foo { public static $my_static = 'hello';}"。

Springboot がカスタム pro ファイルを読み取り、静的変数を挿入する方法 Springboot がカスタム pro ファイルを読み取り、静的変数を挿入する方法 May 30, 2023 am 09:07 AM

Springboot は pro ファイルを読み取り、静的静的変数 mailConfig.properties#サーバー mail.host=smtp.qq.com#ポート番号 mail.port=587#電子メール アカウント mail.userName=hzy_daybreak_lc@foxmail.com#電子メール認証コード mail を挿入します。 passWord =vxbkycyjkceocbdc#遅延時間 mail.timeout=25000#送信者 mail.emailForm=hzy_daybreak_lc@foxmail.com#送信者 mai

See all articles