我正在开发一个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"
},
2条答案
按热度按时间p8h8hvxi1#
你可以这样用在刀刃上
kcugc4gi2#
我可以通过将静态资产(图像)放置到
public/images
文件夹来解决这个问题,这样在构建后,我可以像这样在Blade文件中使用图像:<img src="{{ asset("images/logo.png") }}"/>