Laravel整合Bootstrap 4的完整方案(推荐)

如果你是想在laravel5.5上直接使用bootstrap 4,这应该是相对明智的,因为bootstrap 4最终版本已经发布了,那么这里有一个好消息,就是你不需要一步步执行下面的步骤了,你可以通过安装一个插件来快速使用上boostrap 4了,插件链接:laravelnews/laravel-twbs4,具体如何使用就不赘述了,按照插件文档进行就好了。 如果你是在laravel5.5之前的版本整合bootstrap 4,那么你还是需要走一遍下面的流程:

(一)安装bootstrap及相应依赖

npm install bootstrap@4.0.0-beta popper.js --save-dev

bootstrap-sass package.json 中删除,然后再执行 npm install

(二)在你的 app.scss 文件中引入新的bootstrap的sass文件

//替换掉之前bootstrap-sass的引入
//如果你是laravel 5.5及以后的版本,这里的node_modules换成~符号
@import "node_modules/bootstrap/scss/bootstrap";

(三)编译bootstrap的js文件

在这一步可能你会想直接复制一份你的 bootstrap.min.js 文件到public目录,然后引用,但实际上这样是不行的,因为bootstrap 4的js组件还依赖 jquery 和 Popper.js ,默认的 bootstrap.min.js 文件并没有编译进去。

方法一 使用 bootstrap.min.js 来编译

这个时候我们需要在 webpack.mix.js 添加这么几行:

mix.autoload({
  jquery: ['$', 'window.jQuery',"jQuery","window.$","jquery","window.jquery"],
  'popper.js/dist/umd/popper.js': ['Popper']
});
mix.js([
    'node_modules/bootstrap/dist/js/bootstrap.min.js'
    ],'public/js/bootstrap.min.js')

可以看到,我们通过 mix.autoload() 方法自动加载 jqueryPopper.js ,这样在下面 mix.js() 方法编译 bootstrap.min.js 文件的时候就把相应的依赖编译进去了,最后我们将编译好的文件发送到了 public/js/ 目录下,然后在需要的地方调用即可。

方法二 使用 bootstrap.bundle.min.js 来编译

如果你到bootstrap的 node_modules/bootstrap/dist/js/ 目录下,会发现还有一个 bootstrap.bundle.min.js 文件,这个文件里其实已经预先编译了 Popper.js 进去,但是没有 jquery ,所以刚才的 webpack.mix.js 文件里,我们其实也可以这样来写:

mix.autoload({
  jquery: ['$', 'window.jQuery',"jQuery","window.$","jquery","window.jquery"]
});
mix.js([
    'node_modules/bootstrap/dist/js/bootstrap.bundle.min.js'
    ],'public/js/bootstrap.min.js')

最终压缩出来的文件都是一样的,如果你是用 npm run dev 来编译,那么第二种方法压缩出来的文件要小一点,但如果是到了生产环境,也即 npm run production ,那么两者的大小都是一样的。

当然,第二种方法除了少写一行,还有一个好处,就是在最开始的时候,就不需要 npm install popper.js 了,无可厚非了,少下载个组件而已。

(四)加载bootstrap 4的分页视图(pagination blade)

至此,大家就可以按照bootstrap 4文档在blade视图中实际使用了,或者将已有的bootstrap 3的改成4的,因为这是bootstrap的一次相对颠覆性的升级,所以无法向下兼容,取决于你的项目大小,但一般而言将bootstrap 3的改成4是需要费一阵子功夫的。

具体的不多谈,这期间可能比较困惑的就是如何升级bootstrap 4的分页样式,方法也很多,这里提供一个最简单最快速的:

首先,找到你的 resources/views/vendor/pagination 目录,这是laravel默认的分页样式视图文件,如果没有执行一下 php artisan vendor:publish 就有了

default.blade.php
bootstrap-4.blade.php
simple-default.blade.php
simple-bootstrap-4.blade.php

可以看到laravel其实默认就已经为我们准备好了bootstrap 4的分页模板文件,这个时候最简单的就是改一下文件名字即可,之前的 default.blade 就是原来的bootstrap 3的,所以我们可以将其改成 bootstrap-3.blade.php ,然后将 bootstrap-4.blade 改成默认的 default.blade ,这样laravel加载分页的时候用的就是4的样式了。

固然,你也可以像laravel文档上说的,在每一次渲染分页的时候指定具体的分页视图文件,比如:

$paginator->links('vendor.pagination.bootstrap-4')

但这样太麻烦,知道即可。

总结

以上所述是小编给大家介绍的Laravel整合Bootstrap 4的完整方案,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

您可能感兴趣的文章:

  • 使用Bootstrap4 + Vue2实现分页查询的示例代码
  • Bootstrap4一次重大更新 几乎涉及每行代码
(0)

相关推荐

  • Bootstrap4一次重大更新 几乎涉及每行代码

    对Bootstrap来说去年8月19日是个特别的日子--不仅是项目四周年纪念日,也是经过了一年密集开发之后发布Bootstrap 4内测版的日子.Bootstrap 4是一次重大更新,几乎涉及每行代码. 1.新增功能 Bootstrap 4中有太多重大的更新,本文不能面面俱到,下面是一些颇受关注的亮点: 从Less迁移到Sass: 现在,Bootstrap已加入Sass的大家庭中.得益于Libsass,Bootstrap的编译速度比以前更快: 改进网格系统:新增一个网格层适配移动设备,并整顿语义

  • 使用Bootstrap4 + Vue2实现分页查询的示例代码

    写在前面 工程为前后端分离设计,使用Nginx为前端资源服务器,同时实现后台服务的反向代理.后台为Java Web工程,使用Tomcat部署服务. 前端框架:Bootstrap4,Vue.js2 后台框架:spring boot,spring data JPA 开发工具:IntelliJ IDEA,Maven 实现效果: 会员信息 如何使用Bootstrap+Vue来实现动态table,数据的新增删除等操作,请查看使用Bootstrap + Vue.js实现表格的动态展示.新增和删除.交代完毕,

  • Laravel整合Bootstrap 4的完整方案(推荐)

    如果你是想在laravel5.5上直接使用bootstrap 4,这应该是相对明智的,因为bootstrap 4最终版本已经发布了,那么这里有一个好消息,就是你不需要一步步执行下面的步骤了,你可以通过安装一个插件来快速使用上boostrap 4了,插件链接:laravelnews/laravel-twbs4,具体如何使用就不赘述了,按照插件文档进行就好了. 如果你是在laravel5.5之前的版本整合bootstrap 4,那么你还是需要走一遍下面的流程: (一)安装bootstrap及相应依赖

  • laravel 自定义常量的两种方案

    常量定义方案A: step1 按路径生成constants文件 app/config/constants.php step2 constants文件里写 return [ 'ADMIN_NAME' => 'administrator', 'ADMIN_NAME1' => ['INIT' => '1'] ]; step3 在用到的时候 echo Config::get('constants.ADMIN_NAME'); echo Config::get('constants.ADMIN_NA

  • JavaWeb中的简单分页完整代码(推荐)

    这次主要是讲解一下通过登录后对得到的数据进行分页,首先我们新建一个登录页面login.jsp,因为我们主要学习一下分页,所以登录验证的部分不再阐述,主要代码如下: <form action="pageServlet"> 用户名:<input type="text" name="username"><br> 密 码:<input type="text" name="passwo

  • 基于Bootstrap框架菜鸟入门教程(推荐)

    Bootstrap菜鸟入门教程 Bootstrap简介 Bootstrap,来自 Twitter,是目前最受欢迎的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷. 一.栅格系统 栅格系统的工作原理: "行(row)"必须包含在 .container (固定宽度)或 .container-fluid (100% 宽度)中,以便为其赋予合适的排列(aligment)和内补(padding). 通过"行(ro

  • ThinkPHP 整合Bootstrap Ajax分页样式

    ThinkPHP Ajax分页代码 publicfunction index() { $where=array(); $name = I('name'); if(!empty($name)){ $where['name']= array('like','%'.(string)$name.'%'); } $Role=M('Role'); $count= $Role->where($where)->count();// 查询满足要求的总记录数 $Page =new \Think\AjaxPage(

  • 详解SpringBoot项目整合Vue做一个完整的用户注册功能

    目录 前言 1 实现用户注册流程 1.1 用户注册完整流程 1.2 用户注册信息及校验 2 后台接口设计 2.1 上传头像接口 2.2 用户注册接口 3 后端代码实现 3.1 用户头像上传接口编码实现 3.2 用户注册接口 4 前端代码实现 4.1 完成用户注册界面vue组件编码 4.2 工具类中增加校验方法 4.3 API文件中添加用户注册方法 4.4 全局方法中添加用户注册方法 4.5 路由列表中添加用户注册组件 4.6 登录组件中添加用户注册的跳转链接 4.7 路由跳转控制中添加白名单 5

  • SpringBoot配置文件中数据库密码加密两种方案(推荐)

    SpringBoot项目经常将连接数据库的密码明文放在配置文件里,安全性就比较低一些,尤其在一些企业对安全性要求很高,因此我们就考虑如何对密码进行加密. 介绍两种加密方式:jasypt 可加密配置文件中所有属性值; druid 自带了加解密,可对数据库密码进行加密. jasypt 加解密 jasypt 是一个简单易用的加解密Java库,可以快速集成到 Spring 项目中.可以快速集成到 Spring Boot 项目中,并提供了自动配置,使用非常简单. 步骤如下: 1)引入maven依赖 <de

  • SpringBoot整合BootStrap实战

    目录 SpringBoot整合BootStarp 1.Pom文件 2.在resource下创建一个l文件路径:statis/webjars 3.将页面放在src/main/webapp/WEB-INF/views下 4.界面添加以下几行 5.application.yml配置文件中 6. Controller 注意 因为我显示的是jsp SpringBoot整合BootStarp 一开始在将BootStrap整合到项目中时,以为SpringBoot项目和以前的javaWeb一样,直接在页面中引用

  • Easyui ueditor 整合解决不能编辑的问题(推荐)

    <script src="editor/editor_config.js" type="text/javascript" ></script> <script src="editor/editor_all.js" type="text/javascript" ></script> <link href="editor/themes/default/ueditor.

  • SpringBoot整合JWT Token的完整步骤

    目录 背景 一  JWT 消息构成 1.1 组成 1.2 header 1.3 playload 1.4 signature 二 Spring Boot 和 JWT集成实例 2.1 项目依赖 2.2 自定义注解 @JwtToken 2.3 JWT认证工具类 JwtUtil.java 2.4 拦截器拦截带有注解的接口 JwtInterceptor.java 2.5 全局异常捕获 2.6 接口 JwtController.java 2.7 Postman测试接口 2.7.1 在没有token的情况下

随机推荐