溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Laravel整合Bootstrap4的方法是什么

發(fā)布時間:2022-12-07 09:20:42 來源:億速云 閱讀:89 作者:iii 欄目:編程語言

這篇“Laravel整合Bootstrap4的方法是什么”文章的知識點大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Laravel整合Bootstrap4的方法是什么”文章吧。

如果你是在laravel5.5之前的版本整合bootstrap 4,那么你還是需要走一遍下面的流程:

(一)安裝bootstrap及相應(yīng)依賴

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

將 bootstrap-sass  package.json 中刪除,然后再執(zhí)行 npm install

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

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

(三)編譯bootstrap的js文件

在這一步可能你會想直接復(fù)制一份你的 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() 方法自動加載 jquery 和 Popper.js ,這樣在下面 mix.js() 方法編譯 bootstrap.min.js 文件的時候就把相應(yīng)的依賴編譯進去了,最后我們將編譯好的文件發(fā)送到了 public/js/ 目錄下,然后在需要的地方調(diào)用即可。

方法二 使用 bootstrap.bundle.min.js 來編譯

如果你到bootstrap的 node_modules/bootstrap/dist/js/ 目錄下,會發(fā)現(xiàn)還有一個 bootstrap.bundle.min.js 文件,這個文件里其實已經(jīng)預(yù)先編譯了 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 來編譯,那么第二種方法壓縮出來的文件要小一點,但如果是到了生產(chǎn)環(huán)境,也即 npm run production ,那么兩者的大小都是一樣的。

當(dāng)然,第二種方法除了少寫一行,還有一個好處,就是在最開始的時候,就不需要 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默認的分頁樣式視圖文件,如果沒有執(zhí)行一下 php artisan vendor:publish 就有了

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

可以看到laravel其實默認就已經(jīng)為我們準備好了bootstrap 4的分頁模板文件,這個時候最簡單的就是改一下文件名字即可,之前的 default.blade 就是原來的bootstrap 3的,所以我們可以將其改成 bootstrap-3.blade.php ,然后將 bootstrap-4.blade 改成默認的 default.blade ,這樣laravel加載分頁的時候用的就是4的樣式了。

固然,你也可以像laravel文檔上說的,在每一次渲染分頁的時候指定具體的分頁視圖文件,比如:

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

以上就是關(guān)于“Laravel整合Bootstrap4的方法是什么”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI