Laravel 项目如何使用 Vite 构建静态资源

Leo
Leo
发布时间:2026-08-25| 44人浏览过
原创

前言

如果你做 Laravel 项目时还习惯用 Laravel Mix,那在新项目里遇到默认启用的 Vite,最需要弄清的其实是接入链路。本文按安装依赖、配置入口、Blade 引入和开发构建四个环节梳理,帮助你快速判断一个 Laravel 项目里的静态资源方案是否已经接好、该怎么用。

如果你之前做 Laravel 项目一直用的是 Laravel Mix,切到 Vite 时最常见的问题不是“能不能用”,而是“项目里到底该改哪几处”。这篇文章就按实际接入流程来整理:先确认依赖,再看 vite.config.js 怎么声明入口,接着在 Blade 模板里加载资源,最后区分开发阶段和生产构建的使用方式,便于你快速判断项目是否已经接入正确。

安装 Vite 插件

从现在的 Laravel 默认项目开始,Vite 已经是官方推荐的静态资源构建方案,对应插件是 laravel-vite-plugin。通常它已经出现在项目默认的 package.json 依赖里,因此不需要额外手动新增包名,先把前端依赖安装完整即可。

npm install

这一步的前提也很明确:你需要先有一个可运行的 Laravel 项目,并准备好 PHP 与 Node.js 环境。缺少这两部分,后面的开发服务和构建命令都无法正常执行。

配置 Vite 入口文件

Laravel 项目根目录下的 vite.config.js,就是整个 Vite 接入的核心配置文件。最关键的一点,是在这里声明要交给 Vite 处理的入口资源。

用便签卡片展示 Laravel 项目接入 Vite 的最小步骤,包括依赖安装、配置入口、Blade 引入和命令区分。
Laravel 接入 Vite 的四步主线从安装依赖到页面加载,再到开发和构建命令,Laravel 接入 Vite。

下面这份默认配置里,入口文件就是 resources/css/app.css 和 resources/js/app.js:

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

export default defineConfig({
    plugins: [
        laravel([
            'resources/css/app.css',
            'resources/js/app.js',
        ]),
    ],
});

这意味着,前端样式和脚本会从这两个入口开始被打包、监听和构建。如果你的项目后续拆分出更多页面入口,也通常是在这一层继续扩展,而不是直接改 Blade 模板中的路径规则。

在 Blade 页面中引入资源

配置好入口后,还需要让 Laravel 视图真正加载这些资源。在 Blade 文件里,官方提供的是 @vite 指令,它会根据当前环境自动处理开发期和构建后的资源引用。

展示 Blade 模板中使用 @vite 引入 CSS 和 JS 的页面结构,突出开发与生产环境由指令自动切换资源引用。
@vite 在模板里的加载位置Blade 模板中的 @vite 指令不只是简单引入文件。

以 resources/views/welcome.blade.php 为例,可以这样引入:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1">

        <title>Laravel</title>

        @vite('resources/css/app.css')
    </head>
    <body id="app">
        Hello Vite
    </body>
    @vite('resources/js/app.js')
</html>

这里分别把 app.css 和 app.js 挂到页面中。写法看起来简单,但它解决的是不同环境下资源地址切换的问题:开发时走 Vite 服务,生产时走构建产物,因此不建议再手动写死静态文件路径。

开发调试与生产构建怎么用

接入完成后,真正日常会用到的就是两条命令:一条用于开发,一条用于上线前构建。

开发阶段

在本地开发时,运行下面的命令即可启动 Vite。它会监听文件变化,并在修改后自动更新资源:

npm run dev

这一步适合联调页面、修改样式和脚本时使用,反馈速度会比传统打包流程更直接。

生产环境

到了部署或发布阶段,则需要提前把静态资源构建成真正可交付的文件:

npm run build

执行后,项目会生成用于生产环境的静态资源产物。也就是说,npm run dev 负责开发期体验,npm run build 负责上线前准备,这两者的职责不要混用。

使用 Vite 的核心思路

把 Laravel 项目切到 Vite,本质上只需要抓住四个点:依赖已安装、入口在 vite.config.js 中声明、Blade 里通过 @vite 引入、开发和生产分别使用不同命令。理解了这条链路,后续无论是继续扩展前端资源,还是检查项目接入是否正常,都会更容易定位问题。

对于已经习惯 Laravel Mix 的项目来说,这不是一次复杂迁移,但确实是 Laravel 当前默认资源构建方式的变化。把这套流程走通后,后面维护静态资源会顺手很多。

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。