vue-cli+webpack在生成的项目中使用bootstrap实例代码


Posted in Javascript onMay 26, 2017

在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>   </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">×</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。

vue-cli+webpack在生成的项目中使用bootstrap实例代码 

 代码地址

 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery1.83 之前所有与异步列队相关的模块详细介绍
Nov 13 Javascript
js实现收缩菜单效果实例代码
Oct 30 Javascript
jQuery中before()方法用法实例
Dec 25 Javascript
简介JavaScript中setUTCSeconds()方法的使用
Jun 12 Javascript
每天一篇javascript学习小结(Array数组)
Nov 11 Javascript
JavaScript与jQuery实现的闪烁输入效果
Feb 18 Javascript
jQuery控制文本框只能输入数字和字母及使用方法
May 26 Javascript
JS日程管理插件FullCalendar简单实例
Feb 07 Javascript
vue使用Axios做ajax请求详解
Jun 07 Javascript
bootstrap多层模态框滚动条消失的问题
Jul 21 Javascript
LayerClose弹窗关闭刷新方法
Aug 17 Javascript
使用mixins实现elementUI表单全局验证的解决方法
Apr 02 Javascript
BootStrap中的Fontawesome 图标
May 25 #Javascript
Vue.js 中的 $watch使用方法
May 25 #Javascript
详解Javascript获取缓存和清除缓存API
May 25 #Javascript
Angularjs 实现动态添加控件功能
May 25 #Javascript
JavaScript实现自动跳转文本功能
May 25 #Javascript
angularjs项目的页面跳转如何实现(5种方法)
May 25 #Javascript
AngularJS基于factory创建自定义服务的方法详解
May 25 #Javascript
You might like
PHP STRING 陷阱原理说明
2010/07/24 PHP
php生成百度sitemap站点地图类函数实例
2014/10/17 PHP
简述php环境搭建与配置
2016/12/05 PHP
页面调用单个swf文件,嵌套出多个方法。
2011/11/21 Javascript
jquery操作 iframe的方法
2014/12/03 Javascript
JS实现图片放大镜效果的方法
2015/02/27 Javascript
jquery实现选中单选按钮下拉伸缩效果
2015/08/06 Javascript
第一次接触JS require.js模块化工具
2016/04/17 Javascript
AngularJs Injecting Services Into Controllers详解
2016/09/02 Javascript
Node.js 数据加密传输浅析
2016/11/16 Javascript
Vue实现typeahead组件功能(非常靠谱)
2017/08/26 Javascript
微信小程序form表单组件示例代码
2018/07/15 Javascript
vue的注意规范之v-if 与 v-for 一起使用教程
2019/08/04 Javascript
kNN算法python实现和简单数字识别的方法
2014/11/18 Python
python中Pycharm 输出中文或打印中文乱码现象的解决办法
2017/06/16 Python
简单了解python代码优化小技巧
2019/07/08 Python
Python用5行代码实现批量抠图的示例代码
2020/04/14 Python
基于python3.7利用Motor来异步读写Mongodb提高效率(推荐)
2020/04/29 Python
基于pytorch中的Sequential用法说明
2020/06/24 Python
python搜索算法原理及实例讲解
2020/11/18 Python
世界上最大的网络主机公司:1&1
2016/10/12 全球购物
swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?
2013/03/30 面试题
本科生求职简历的自我评价
2013/10/21 职场文书
个人职业生涯规划书1500字
2013/12/31 职场文书
高中毕业生的个人自我评价
2014/02/21 职场文书
学生会副主席竞聘书
2014/03/31 职场文书
护士演讲稿优秀范文
2014/04/30 职场文书
英语分层教学实施方案
2014/06/15 职场文书
招商银行工作证明
2015/06/17 职场文书
2015年迎新晚会策划书
2015/07/16 职场文书
外出考察学习心得体会
2016/01/18 职场文书
Ajax是什么?Ajax高级用法之Axios技术
2021/04/21 Javascript
Opencv中cv2.floodFill算法的使用
2021/06/18 Python
使用feign服务调用添加Header参数
2021/06/23 Java/Android
python ansible自动化运维工具执行流程
2021/06/24 Python
漫画「处刑少女的生存之道」第3卷封面公开
2022/03/21 日漫