vue-cli+webpack在生成的項目中使用bootstrap方法(一)中,是通過手動下載bootstrap庫,然后手動添加到src/assets中,顯然是過程太多。
當然是可以更省力些,可以通過npm安裝bootstrap,然后用import直接導入bootstrap的方式進行整合,因為vue-loader能自動從node_modules下加載庫,非常方便。
完整過程實現一遍。
腳手架生成項目(同方法一)
執行命令用webpack模板生成一個名為vuestrap的項目(名字任意)
vue init webpack vuestrap
在出現的各提示選項中,沒什么要求,為了方便,把不用的ESLint,unit tests,e2e都關掉(這些選項都隨意)。
? Project name vuestrap
? Project description A Vue.js project ? Author 省略 ? Vue build standalone ? Install vue-router? Yes ? Use ESLint to lint your code? No ? Setup unit tests with Karma + Mocha? No ? Setup e2e tests with Nightwatch? No
選項選完,項目也就生成了。
執行命令,安裝腳手架創建的組件
npm install
安裝jquery(同方法一)
bootstrap是依賴jquery的,所以就先裝上jquery,這里用的版本是1.11.3。
稍后在配置的時候,是以webpack插件的方式進行打包,所以這里直接用npm進行安裝,因為插件方式打包的組件都是require進來的。
執行命令,並保存到package.json中
npm install jquery@1.11.3 --save-dev
注:如果想查看npm上jquery有哪些版本,可以執行命令:
npm view jquery versions
安裝bootstrap (方法二)
這里用的版本是3.3.0。
執行命令,即可安裝完成。
npm install bootstrap@3.3.0 --save-dev
配置jquery (同方法一)
將jquery以插件打包,需要為webpack的plugins進行插件設置。
在build/webpack.base.conf.js文件中,在整個配置對象的末尾增加plugins配置。
在webpack.base.conf.js中的配置項,可以在dev和build出來的pro版本中都有效。
下面的配置其實就是變量名的真正指向設置,這樣,在頁面中對jquery的各種名字的調用就會有效,否則bootstrap跑不起來。
plugins: [
new webpack.ProvidePlugin({ $: "jquery", jQuery: "jquery", "windows.jQuery": "jquery" }) ]
引用bootstrap(方法二)
在src/main.js文件的頂部加入如下對bootstrap主要文件的引用,注意這里的路徑,不在是從src/assets加載,而是換成了從node_modules加載。
import 'bootstrap/dist/css/bootstrap.min.css'
import 'bootstrap/dist/js/bootstrap.min.js'
配置bootstrap(同方法一)
因為bootstrap除了js和css文件外,還有字體文件需要一並打包,默認生成的webpack.base.conf.js中的moudle->rules設定中都已經包含對字體文件的打包設置,所以無需修改,很人性啊。
寫完后,執行命令,運行效果。
npm run dev
效果:
點擊按鈕,可以打開modal。
End