問題タブ [webpack-file-loader]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
22 参照

javascript - アプリケーションが既存のパスでホストされていない場合にのみ、アセットが正しくマップされます

複数のクライアント サイトで使用するアプリケーションを開発しています。これらは、次のように、サブドメインまたはパス (私は制御できません) としてホストされます。

  1. https://application.example.com/#/example-page
  2. https://example.com/application/#/example-page

これが私のWebpack 1構成です:

これにより、私のアセット/build/は、メインのアプリケーション JavaScript ファイルも含むフォルダーにコンパイルされます。

私のdist/buildフォルダー

私が抱えている問題は、アプリケーションが既存のパス (上記の URL の例 2) でホストされている場合、コンパイルされたアセットが見つからないことですが、パスが存在しない場合は完全に正常にロードされます。いくつかのデバッグを行うと、2 番目の URL の例でアセットをロードするには、何らかの理由で/buildディレクトリを指定する必要があることがわかりますが、 /buildを指定すると、最初の URL の例が壊れます。

  1. https://application.example.com/compiled-asset.png
  2. https://example.com/application/compiled-asset.png ⇐ 404
  3. https://application.example.com/build/compiled-asset.png ⇐ 404
  4. https://example.com/application/build/compiled-asset.png

ここで何が間違っていますか?

0 投票する
1 に答える
23224 参照

html - webpackを使用して画像をバンドルするには?

webpack モジュールバンドラーを使用して angular2 アプリケーションを作成しています。これで、jpg、gif、png などの画像ファイルをロードするためのファイルローダーが追加されました。しかし、ビルド コマンドを実行すると、イメージ ファイルがバンドルされません。これが私の構成です:

webpack.config.js (イメージローダー構成のみ)

次のように、フォルダーの画像を html テンプレートに含めました。

私のCSSでも:

しかし、アプリケーション全体をビルドすると、webpack 構成で指定したように、画像が assets フォルダーに配置されません。

最も奇妙なことは、フォントに同じ構成が使用され、アセットフォルダー内に作成されていることです。これは、style.css にフォントを含めるための私の css です。

このフォントの svgs、ttf、woff などのすべてのファイルは、ビルドを実行した後、assets フォルダーにあります。

アセットフォルダーに画像が作成されていないのに、フォントファイルが同じ構成/ローダーで作成されている理由を誰か教えてください。