首页 > 代码库 > vue-cli+webpack在生成的项目中使用bootstrap

vue-cli+webpack在生成的项目中使用bootstrap

在也个html页面中加入bootstrap是很方便,就是一般的将css和js文件通过Link和Script标签就行。

那么在一个用vue-vli生成的前端项目中如何加入?因为框架不一样了,略微要适应一下。

 

脚手架生成项目

执行命令用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所需的文件 

下载bootstrap包,这里用的版本是3.3.0。

下载下来后将fonts,js,css文件夹分别放到项目目录/src/assets下。

 

配置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主要文件的引用。

import ‘./assets/css/bootstrap.min.css‘import ‘./assets/js/bootstrap.min‘

做完这个,也就配完了。

接下去试试看能不能用,就写个简单的页面。

 

验证页面

就在App.vue中写一个页面,放一个panel,button,modal。

<template>  <div id="app">    <div class=‘container‘>      <div class=‘row‘>        <div class=‘col-lg-4‘>          <h1>demo</h1>        </div>        <div class=‘col-lg-8‘>          <div class=‘panel panel-default‘ style=‘min-width:500px;box-shadow:4px 4px 10px #888888;‘>            <div class="panel-heading">              <button id=‘btnCreate‘>                <span class="glyphicon glyphicon-plus"></span>              </button>              <span>&nbsp;&nbsp;&nbsp;</span>            </div>            <div class="panel-body">              <div style=‘float: left;width:100%‘>                <button type="button" class="btn btn-primary btn-lg" data-toggle="modal" data-target="#myModal">                  Launch demo modal                </button>                <!-- Modal -->                <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">                  <div class="modal-dialog" role="document">                    <div class="modal-content">                      <div class="modal-header">                        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>                        <h4 class="modal-title" id="myModalLabel">Modal title</h4>                      </div>                      <div class="modal-body">                        ...                      </div>                      <div class="modal-footer">                        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>                        <button type="button" class="btn btn-primary">Save changes</button>                      </div>                    </div>                  </div>                </div>              </div>            </div>          </div>        </div>      </div>    </div>  </div></template><script>export default {  name: ‘app‘}</script><style>#app {  margin-top: 60px;}</style>

写完后,执行命令,运行效果。

npm run dev

效果:

点击按钮,可以打开modal。

技术分享 

 

代码

 

End

vue-cli+webpack在生成的项目中使用bootstrap