在 Laravel 9.x 中优雅且轻松的安装 Bootstrap 框架(vite 篇)
本文给大家分享以下 Laravel 9.x 下的前端工作流的使用心得,之前用 Laravel Mix,现在咱们这次就用用官方推荐的 vite 工具,同时继续使用 bootstrap 5,这样的话既能方便课程学者即能掌握最新的前端工作流,又能低门槛的调整自己喜欢的样式。最重要的是不影响教程的学习进度和节奏。【推荐:laravel视频教程】
写在前面
开发环境:
大环境上是 Windows 10/11 + Homestead,均为最新稳定版本
两个平台都安装 Node.js
Laravel 版本为 9.x(发文时我用的是最新的 9.38.0) ,其他未提及的按照 9.x 版本的教程来
不使用 Laravel Mix,使用官方推荐的新前端打包工具 vite 完成教程里关于样式的修改任务。
我的目的:在 Windows 和 homestead 两个平台使用 Node.js 来规避安装 Bootstrap 中能踩到的坑,让苦逼的 Win 用户学习《L01 Laravel 教程 - Web 开发实战入门》的《4.2. 样式美化》章节做到 优雅且轻松。
不多废话,线上操作
操作方法
首先默认读者已经学习到《4.2. 样式美化》章节,并且很不幸的被卡住,其次,自己的 Windows 电脑和 Homestread 环境都可以运行 Node.js。Windows 下没有装 Node.js 的可通过搜索引擎搜索下载,傻瓜式的安装流程,不再赘述。
首先我们根据教程做到下方这一步,但先别执行
composer require laravel/ui:3.4.5 --dev
我们改改,这里直接获取默认的最新 laravel/ui 版本,并在 linux 内执行
composer require laravel/ui // 发文时最新的版本是 4.0.1,对不住了版主,我自己偷摸的上到最新的版本惹 php artisan ui bootstrap
然后我们到 windows 环境下开一个终端,比如 powershell,并执行
npm config set registry=https://registry.npm.taobao.org npm i
然后回到你的编辑器,找到项目根目录下刚生成的 vite.coffig.js 我们修改成如下的效果
import { defineConfig } from 'vite'; import laravel from 'laravel-vite-plugin'; import path from 'path' export default defineConfig({ plugins: [ laravel([ 'resources/js/app.js', ]), ], resolve: { alias: { '~bootstrap': path.resolve(__dirname, 'node_modules/bootstrap'), } }, });
然后在 app.js 中导入 boostrap 5 的 scss
import './bootstrap'; // 以下为新增部分 import '../sass/app.scss' import * as bootstrap from 'bootstrap'
之后再去项目的 blade 模板中,更换原本的 mix () 代码。这里的话要是根据教程来,我们只改那个 default.blade.php 文件即可,即将其中的这两行代码
<link rel="stylesheet" href="{{ mix('css/app.css') }}"> <script src="{{ mix('js/app.js') }}"></script>
全部换成 @vite 代码
@vite(['resources/js/app.js'])
下面是我在 default.blade.php 放的位置
@yield('title', 'Weibo App') - Laravel 入门教程 @vite(['resources/js/app.js']) <--- here!@yield('content')
之后我们后期学习中,但凡牵扯到 Mix 的一律按照这个思路处理。
最后,在 windows 终端输入如下指令
npm run build // 或者 npm run dev
操作结束,刷新以下浏览器就可看到效果。
至于 dev 和 build 的区分就是:
dev 适合开发的时候随时调整,你的修改是实时生效且自动的,建议开发的时候一直开个窗口挂后台就行
build 会一步处理完毕并输出 css 和 js 文件,只会执行一次不会自动,适合最后发布阶段。
速度方面,相比较 laravel Mix 前端工作流,vite 会以闪电般的速度给你稳健的处理好,放心,vite 的处理速度实在是太快惹。
项目部署
当我们的代码上传到远端 git 仓库后,再拉到生产环境时,vite 使用 npm run build 生成的 css 和 js 文件是不会纳入 git 管理的,也就是你在本地 git add -A 是包括不了他俩的,我们需要在本地开发项目的根目录找到.gitignore 文件,注释或者删除 /public/build 这一行,具体如下
/node_modules # /public/build <-- here /public/hot /public/storage /storage/*.key /vendor .env .env.backup .phpunit.result.cache Homestead.json Homestead.yaml auth.json npm-debug.log yarn-error.log /.idea /.vscode
之后我们 build 的文件就可以被 git add -A 检测到。
当然,你也完全可以在线上编译样式,这个思路你懂就行,举一反三嘛。
其他小贴士
bootstrap 5 已经删除原本 4 版本的 Jumbotron 组件,所以你看不到对应的样式,正常现象。想改的请发挥自己的想象,去自己写一个。
关于 4.4. 浏览器缓存问题 章节,若你使用 vite 的前端工作流,build 完毕后,会自动给样式文件加上后缀,所以这一章节可以不看,使用 vite 的工作模式是不存在这个问题的,跳过继续学习。
是否发现本文有些地方你可以提出你自己的方法,这样最好,我的回答不是最完美的,大家学习过程中能提出自己独立思考的疑问或者解决方案,才是最棒的结果,欢迎大家探索适合自己的解决方案。
最后碎碎念
然后相比较版主教程里让我们用特定版本学习 laravel 的方法,但我还是喜欢遵循官方的文档说明,尽量用原生方法实现相关效果,且方方面面的都是用最新版本,也算是版主推荐规范化思路下的一个 “叛逆邪道” 吧,自己也需要解决时不时遇到的新版本兼容问题。总之希望这篇文章可以为初学者提供一个新思路,毕竟我们是学习阶段,而非生产环境开发,多学一点是一点。
相比我之前 8.x 的经验分享,这个属于新技术的学习与适配,第一次遇到新版本内容我也栽了。自行学习,寻找方案,然后解决问题,学会思路比学会方法更重要,相信后期的 10.x 、100.x 版本也会有更多新内容、新变动,大家一定要掌握解决问题的思路,死板学方法是行不通的,希望各位学习路上的初学者们不要放弃这一优美的框架,要不太可惜了!
以上是详解如何在Laravel9.x中快速安装Bootstrap的详细内容。更多信息请关注PHP中文网其他相关文章!

Laravel在后端开发中的核心功能包括路由系统、EloquentORM、迁移功能、缓存系统和队列系统。1.路由系统简化了URL映射,提高了代码组织和维护性。2.EloquentORM提供了面向对象的数据操作,提升了开发效率。3.迁移功能通过版本控制管理数据库结构,确保一致性。4.缓存系统减少数据库查询,提升响应速度。5.队列系统有效处理大规模数据,避免阻塞用户请求,提升整体性能。

Laravel在后端开发中表现强大,通过EloquentORM简化数据库操作,控制器和服务类处理业务逻辑,并提供队列、事件等功能。1)EloquentORM通过模型映射数据库表,简化查询。2)业务逻辑在控制器和服务类中处理,提高模块化和可维护性。3)其他功能如队列系统帮助处理复杂需求。

选择Laravel开发项目是因为其灵活性和强大功能适应不同规模和复杂度的需求。Laravel提供路由系统、EloquentORM、Artisan命令行等功能,支持从简单博客到复杂企业级系统的开发。

Laravel和Python在开发环境和生态系统上的对比如下:1.Laravel的开发环境简单,仅需PHP和Composer,提供了丰富的扩展包如LaravelForge,但扩展包维护可能不及时。2.Python的开发环境也简单,仅需Python和pip,生态系统庞大,涵盖多个领域,但版本和依赖管理可能复杂。

Laravel是如何在后端逻辑中发挥作用的?它通过路由系统、EloquentORM、认证与授权、事件与监听器以及性能优化来简化和增强后端开发。1.路由系统允许定义URL结构和请求处理逻辑。2.EloquentORM简化数据库交互。3.认证与授权系统便于用户管理。4.事件与监听器实现松耦合代码结构。5.性能优化通过缓存和队列提高应用效率。

Laravel受欢迎的原因包括其简化开发过程、提供愉快的开发环境和丰富的功能。1)它吸收了RubyonRails的设计理念,结合PHP的灵活性。2)提供了如EloquentORM、Blade模板引擎等工具,提高开发效率。3)其MVC架构和依赖注入机制使代码更加模块化和可测试。4)提供了强大的调试工具和性能优化方法,如缓存系统和最佳实践。

Django和Laravel都是全栈框架,Django适合Python开发者和复杂业务逻辑,Laravel适合PHP开发者和优雅语法。1.Django基于Python,遵循“电池齐全”哲学,适合快速开发和高并发。2.Laravel基于PHP,强调开发者体验,适合小型到中型项目。

PHP和Laravel不是直接可比的,因为Laravel是基于PHP的框架。1.PHP适合小型项目或快速原型开发,因其简单直接。2.Laravel适合大型项目或高效开发,因其提供丰富功能和工具,但学习曲线较陡,性能可能不如纯PHP。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

SublimeText3汉化版
中文版,非常好用

Dreamweaver Mac版
视觉化网页开发工具

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

Atom编辑器mac版下载
最流行的的开源编辑器