Preline.js 在 Laravel 11 中的正确集成方式
Preline.js 是一个现代化的 UI 组件库,为开发者提供了丰富的交互组件。在 Laravel 项目中集成 Preline.js 时,开发者常会遇到加载问题,特别是当按照通用文档说明操作时。本文将详细介绍在 Laravel 11 项目中正确集成 Preline.js 的方法。
常见错误分析
许多开发者在 Laravel 项目中集成 Preline.js 时,会直接按照通用文档说明,在 HTML 文件中添加以下脚本引用:
<script src="./node_modules/preline/dist/preline.js"></script>
这种做法会导致 404 错误,因为 Laravel 的 Vite 构建系统不会直接暴露 node_modules 目录下的文件。错误信息通常会显示请求的 preline.js 文件无法找到。
正确的集成步骤
1. 安装 Preline.js
首先需要通过 npm 安装 Preline.js:
npm install preline
2. 配置 TailwindCSS
在 tailwind.config.js 文件中添加 Preline.js 的内容路径和插件:
module.exports = {
content: [
// 其他内容路径...
'node_modules/preline/dist/*.js',
],
plugins: [
require('preline/plugin'),
],
}
3. 在 JavaScript 入口文件中导入
在 resources/js/app.js 文件中添加 Preline.js 的导入:
import 'preline/preline'
4. 配置 Vite
确保 vite.config.js 正确配置了 CSS 和 JavaScript 的入口文件:
import { defineConfig } from 'vite'
import laravel from 'laravel-vite-plugin'
export default defineConfig({
plugins: [
laravel({
input: [
'resources/css/app.css',
'resources/js/app.js',
],
refresh: true,
}),
],
})
5. 在 Blade 模板中加载资源
最后,在 Blade 模板文件中使用 Vite 指令加载编译后的资源:
<!DOCTYPE html>
<html>
<head>
<!-- 其他 head 内容 -->
@vite(['resources/css/app.css', 'resources/js/app.js'])
</head>
<body>
<!-- 页面内容 -->
</body>
</html>
关键注意事项
-
不要手动引用 node_modules 中的文件:Laravel 的 Vite 构建系统会自动处理模块依赖,手动引用会导致路径问题。
-
确保构建过程完整:每次修改配置后,需要重新运行开发服务器或构建命令。
-
检查导入路径:在 JavaScript 文件中导入时,使用 'preline/preline' 而不是完整的 dist 路径。
-
开发与生产环境:开发环境下使用
npm run dev,生产环境使用npm run build来确保资源正确编译。
通过遵循这些步骤,开发者可以避免常见的 Preline.js 加载问题,并在 Laravel 11 项目中顺利使用这个强大的 UI 组件库。记住,框架特定的集成方式通常比通用文档更符合实际项目需求。
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C067
MiniMax-M2.1从多语言软件开发自动化到复杂多步骤办公流程执行,MiniMax-M2.1 助力开发者构建下一代自主应用——全程保持完全透明、可控且易于获取。Python00
kylin-wayland-compositorkylin-wayland-compositor或kylin-wlcom(以下简称kywc)是一个基于wlroots编写的wayland合成器。 目前积极开发中,并作为默认显示服务器随openKylin系统发布。 该项目使用开源协议GPL-1.0-or-later,项目中来源于其他开源项目的文件或代码片段遵守原开源协议要求。C01
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7GLM-4.7上线并开源。新版本面向Coding场景强化了编码能力、长程任务规划与工具协同,并在多项主流公开基准测试中取得开源模型中的领先表现。 目前,GLM-4.7已通过BigModel.cn提供API,并在z.ai全栈开发模式中上线Skills模块,支持多模态任务的统一规划与协作。Jinja00
agent-studioopenJiuwen agent-studio提供零码、低码可视化开发和工作流编排,模型、知识库、插件等各资源管理能力TSX0130
Spark-Formalizer-X1-7BSpark-Formalizer 是由科大讯飞团队开发的专用大型语言模型,专注于数学自动形式化任务。该模型擅长将自然语言数学问题转化为精确的 Lean4 形式化语句,在形式化语句生成方面达到了业界领先水平。Python00