npm Laravel:Vite无法在构建后找到映像清单

xbp102n0  于 2023-05-18  发布在  其他
关注(0)|答案(2)|浏览(103)

我正在开发一个Laravel 9应用程序,它使用Blade for UI。该应用程序使用存储在resources/images文件夹中的一些图片。在我的Blade视图中,我包含了这样的图像:<img src="{{ Vite::asset('resources/images/logo.png') }}"/>
在开发模式下一切正常,但是当我使用npm run build命令构建我的资产并使用php artisan serve运行应用程序时,我得到以下错误:
无法在Vite清单中找到文件:/resources/images/logo.png。
我的vite.config.js文件包含以下内容:

import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';

export default defineConfig({
    plugins: [
        laravel({
            input: [
                'resources/css/app.css',
                'resources/js/app.js',
                'resources/images/logo.png',
            ],
            refresh: true,
        }),
    ],
});

我的package.json文件:

{
    "private": true,
    "scripts": {
        "dev": "vite",
        "build": "vite build"
    },
    "devDependencies": {
        "autoprefixer": "^10.4.13",
        "axios": "^1.1.2",
        "laravel-vite-plugin": "^0.7.2",
        "lodash": "^4.17.19",
        "postcss": "^8.4.21",
        "tailwindcss": "^3.2.4",
        "vite": "^4.0.0"
    },
    "dependencies": {
        "alpinejs": "^3.12.0",
        "flowbite": "^1.6.4",
        "xlsx": "^0.18.5"
    }
}

我已经检查了构建后创建的manifest.json文件,可以在其中找到图像,因此我不明白为什么会出现错误:

"resources/images/logo.png": {
    "file": "assets/logo-4ed993c7.js",
    "isEntry": true,
    "src": "resources/images/logo.png"
  },
p8h8hvxi

p8h8hvxi1#

你可以这样用在刀刃上

plugins: [
       //
    ],
    outDir: '../public',
kcugc4gi

kcugc4gi2#

我可以通过将静态资产(图像)放置到public/images文件夹来解决这个问题,这样在构建后,我可以像这样在Blade文件中使用图像:<img src="{{ asset("images/logo.png") }}"/>

相关问题