我安装和配置了拉拉微风和刀片根据文档给出的拉拉。默认情况下,它使用Vite,但是@vite指令在我的项目中不起作用,我不知道我错过了什么。
tailwind.config.js
const defaultTheme = require('tailwindcss/defaultTheme');
/** @type {import('tailwindcss').Config} */
module.exports = {
content: [
'./vendor/laravel/framework/src/Illuminate/Pagination/resources/views/*.blade.php',
'./storage/framework/views/*.php',
'./resources/views/**/*.blade.php',
],
theme: {
extend: {
fontFamily: {
sans: ['Nunito', ...defaultTheme.fontFamily.sans],
},
},
},
plugins: [require('@tailwindcss/forms')],
};vite.config.js
import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';
export default defineConfig({
plugins: [
laravel([
'resources/css/app.css',
'resources/js/app.js',
]),
]
});vite正在正确编译我的js和css资产:

然后,我用@vite指令创建了一个测试刀片模板:
<!DOCTYPE html>
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="csrf-token" content="{{ csrf_token() }}">
<title>{{ config('app.name', 'Laravel') }}</title>
<!-- Fonts -->
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700&display=swap">
<!-- Scripts -->
@vite(['resources/css/app.css', 'resources/js/app.js'])
</head>
<body>
<div class="font-sans text-gray-900 antialiased">
Hello World
</div>
</body>
</html>我的测试路线:
Route::get('/nice', function () {
return view('test');
});下面的输出显示,@vite没有生成适当的脚本和链接资产标记:

我的开发环境是家园,我有拉拉混合在一起,因为我正在慢慢升级我们的前端到vite。我希望这里的人能帮我解决问题,谢谢你。
发布于 2022-07-04 09:08:24
Laravel 8文档中说,使用以下命令安装Laravel微风。
composer require laravel/breeze --dev但这将安装最新版本的微风(^1.10)与Laravel 9 Vite支持。由于Laravel 8不支持Vite,您将不得不使用更老版本的Laravel微风。版本1.9.4适用于我与Laravel 8。
因此,尝试下面的命令来安装Laravel微风:
composer require laravel/breeze:1.9.4发布于 2022-06-30 20:00:42
在使用命令升级框架版本之后,必须清除视图缓存:
php artisan view:clear那么这个新的刀片指令必须正常工作。
发布于 2022-07-11 12:29:23
为了解决我自己的问题,我想出了一个解决你问题的办法!
一个新鲜的,开箱安装的微风利用了一堆组件.这些都可以在应用程序的resources/views/components文件夹中找到。默认情况下,Breeze还附带两个布局组件:
app/View/Components/AppLayout.phpapp/View/Components/GuestLayout.php这些布局组件的HTML结构可以在以下文件中找到:
resources/views/layouts/app.blade.phpresources/views/layouts/guest.blade.php这些布局用于根据正在登录或不登录的用户包装被调用视图的内容。
在您的示例中,您尝试访问URL/nice,它返回test.blade.php视图。视图是在没有任何<html>、<body>或任何其他“包装”html标记的情况下呈现的,因为没有对任何布局的引用。
例如,假设您的test.blade.php只能由登录用户查看。尝试将test.blade.php文件更改为:
<x-app-layout>
<x-slot name="header">
<h2 class="font-semibold text-xl text-gray-800 leading-tight">
{{ __('Test') }}
</h2>
</x-slot>
<div class="font-sans text-gray-900 antialiased">
Hello World
</div>
</x-app-layout>通过将内容包装在x-app-layout标记之间(对于来宾用户来说是x-guest-layout标记),您基本上可以说Laravel应该将test.blade.php的内容呈现到resources/views/layouts/app.blade.php文件的默认插槽中。
上面的示例代码还展示了如何从resources/views/layouts/app.blade.php内部填充test.blade.php插槽。<x-slot name="header">标记的内容放置在声明{{ $header }}的位置,就像集合从控制器传递到视图的方式一样。
在文档( find 这里)中,您可以找到组件如何在Laravel中工作。
https://stackoverflow.com/questions/72799267
复制相似问题