ホームページ >ウェブフロントエンド >フロントエンドQ&A >vue が画像が見つからないというエラーを報告した場合はどうすればよいですか?
画像が見つからないという Vue エラーの解決策: 1. 構成ファイルを変更し、絶対パスを相対パスに変更します; 2. 画像をモジュールとしてロードし、画像を静的ファイルに置きますディレクトリ; 3. imageUrls を対応する vue ファイルに導入し、参照を解析します。
このチュートリアルの動作環境: Windows7 システム、vue3、Dell G3 コンピューター。
vue が画像が見つからないというエラーを報告した場合はどうすればよいですか?
vue で画像が読み込まれない問題と解決策
vue を使ってプロジェクトを開発していると、よく遭遇する問題が「画像が読み込まれない」という問題です。以下に、画像が読み込めないいくつかの状況とその解決策をまとめました。
vue webpack プロジェクトで、プロジェクトがパッケージ化されている css、jsの参照パスが絶対パスになっているため、プロジェクトをデプロイするとstaticがルートディレクトリとみなされ、ファイルの参照パスがエラーになります。
構成ファイルを変更して、絶対パスを相対パスに変更します。
具体的な操作は次のとおりです。
バージョン 3.0 より前の 1.vue-cli
インデックスに bulid モジュールによってエクスポートされたパスを構成します。 jsは設定の下にあります。 Index.html のコンテンツは script タグを通じて導入されており、パスが間違っているため、開いたときに必ず空白になります。まずデフォルトのパスを見てみましょう。
module.exports = { build: { env: require('./prod.env'), index: path.resolve(__dirname, '../dist/index.html'), assetsRoot: path.resolve(__dirname, '../dist'), assetsSubDirectory: 'static', assetsPublicPath: '/', productionSourceMap: true,
デフォルトのassetsPublicPathはルートディレクトリである「/」です。 Index.html と static は同じディレクトリにあります。したがって、これを './ '
2.vue-cli に変更します。バージョン 3.0 以降では、
vue.config.js ファイルを設定します
module.exports = { // baseUrl:'./', // vue-cli3.3以下版本使用 publicPath:'./' // vue-cli3.3+新版本使用
src の router/index.js ルーティング設定のデフォルト モードはハッシュです。ヒストリー モードに変更すると、 、それも開かれます。空白。したがって、ハッシュに変更するか、モード設定を直接削除して、それをデフォルトにします。
履歴モードを使用する必要がある場合は、すべての状況をカバーする候補リソースをサーバーに追加する必要があります。URL が静的リソースと一致しない場合は、index.html を返す必要があります。このページは次のようになります。あなたのアプリはページに依存します。
#// mode: 'history' // 默认hash2. アセットディレクトリの画像が読み込めない
Reason
たとえば、images:[{src:require('./1.png')},{src:require('./2.png') }] これにより、webpack が解析できるようになります。
2. 画像を静的ディレクトリに配置しますただし、images:[{src:”/static/1 などの絶対パスとして記述する必要があります) .png”},{ src:”/static/2.png”}] と記述すると画像が表示されます。 もちろん、webpack.base.config.js で定義することでパスの記述長を短くすることもできます。 ローカル画像の読み込みを簡素化する方法
1. 静的ファイルに新しい imageUrls フォルダーを作成します
2. imageUrls ファイルに入力します
{ 'imageUrls': [ { 'image1': '/static/image/image1.png' }, { 'image2': '/static/image/image2.png' } ] }3. imageUrls を対応する vue ファイルに導入し、参照を解析するだけです
import img from '../../../static/imageUrls/imageUrls.json' export default { data() { return { imageGroups: img.imageUrls } } }推奨学習: 「vue.js ビデオ チュートリアル
以上がvue が画像が見つからないというエラーを報告した場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。