Webpack如何引入bootstrap的方法


Posted in Javascript onJune 17, 2017

Bootstrap中是一种事实上的界面标准,标准到现在的网站大量的使用它。如果可以使用webpack引入的bootstrapcss,就可以一个npm install完成项目的依赖,而不必手工的添加到html内。

本来以为在入口文件内加一行就行:

import 'bootstrap/dist/css/bootstrapcss'

然后安装依赖:

npm i bootstrap url url-loader style-loader css-loader --save

实际上却不是想象的那么简单。因为css文件内还引用了很多类型的字体文件和矢量图文件。要引入它,必须同时提供css之外的类型的对应的loader:

//webpackconfigjs:
moduleexports = {
entry: {
'js'
},
output: {
filename: 'bundlejs'
},
module: {
loaders: [

{ test: /\css$/, loader: 'style-loader!css-loader' },
{ test: /\eot(\?v=\d+\\d+\\d+)?$/, loader: "file" },
{ test: /\(woff|woff2)$/, loader:"url?prefix=font/&limit=5000" },
{ test: /\ttf(\?v=\d+\\d+\\d+)?$/, loader: "url?limit=10000&mimetype=application/octet-stream" },
{ test: /\svg(\?v=\d+\\d+\\d+)?$/, loader: "url?limit=10000&mimetype=image/svg+xml" }
]
}
};

我们在html文件内使用那么一点点的bootstrap:

// chtml
<html>
<body>
<ul class="nav nav-pills">
<li role="presentation" class="active"><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Home</a></li>
<li role="presentation"><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Profile</a></li>
<li role="presentation"><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" >Messages</a></li>
</ul>
<script type="text/javascript" src="bundlejs"></script>
</body>
</html>

再次执行转译:

webpack

打开浏览器:

open chtml

看到bootstrap那熟悉而太熟悉的界面。

引入jquery

如果需要使用bootstrap的js插件的话,就必须首先引入jquery。引用jquery的一个方法是使用webpack插件。

首先安装jquery:

npm i jquery

其次使用插件装入jquery,方法是修改webpack的配置文件,加入:

plugins: [
new webpackProvidePlugin({
$: "jquery",
jQuery: "jquery"
})
]

在入口文件内加入代码来做验证:

$("body")append("<div>hello world</div>")

如果成功,说明jquery加载成功。这样你就可以在入口js文件内加载bootstrapjs了:

import 'bootstrap/dist/js/bootstrapjs'

排除错误

我确实在引入bootstrap的时候,遇到一个神奇的错误。在webpack转译时报错,css-loader,unknown word样子的错误。对webpackconfigjs文件加入一个include属性并指向到不存在的目录即可。

{
test: /\css$/,
include: [
pathresolve(__dirname, "not_exist_path")
],
loader: "style!css"
}

原始的issue在此:https://githubcom/webpack/cs 。我看看看到此答案时以为是个玩笑。

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

Javascript 相关文章推荐
用JavaScript页面不刷新时全选择,全删除(GridView)
Apr 14 Javascript
javascript 触发HTML元素绑定的函数
Sep 11 Javascript
javascript二维数组转置实例
Jan 22 Javascript
JSONP之我见
Mar 24 Javascript
KnockoutJS 3.X API 第四章之click绑定
Oct 10 Javascript
基于jQuery实现火焰灯效果导航菜单
Jan 04 Javascript
Node.js的特点详解
Feb 03 Javascript
vuejs响应用户事件(如点击事件)
Mar 14 Javascript
jQuery实现简单漂亮的Nav导航菜单效果
Mar 29 jQuery
Vue中正确使用jQuery的方法
Oct 30 jQuery
Vue.js与 ASP.NET Core 服务端渲染功能整合
Nov 16 Javascript
微信小程序向Java后台传输参数的方法实现
Dec 10 Javascript
Webpack执行命令参数详解
Jun 17 #Javascript
JS实现留言板功能
Jun 17 #Javascript
利用vscode编写vue的简单配置详解
Jun 17 #Javascript
JavaScript用二分法查找数据的实例代码
Jun 17 #Javascript
JS实现新建文件夹功能
Jun 17 #Javascript
vue-router路由参数刷新消失的问题解决方法
Jun 17 #Javascript
JS实现商品筛选功能
Aug 19 #Javascript
You might like
php图像处理函数大全(推荐收藏)
2013/07/11 PHP
浅析ThinkPHP中execute和query方法的区别
2014/06/13 PHP
thinkPHP中钩子的使用方法实例分析
2017/11/16 PHP
Yii框架 session 数据库存储操作方法示例
2019/11/18 PHP
javascript 浏览器判断 绑定事件 arguments 转换数组 数组遍历
2009/07/06 Javascript
Jquery AJAX 框架的使用方法
2009/11/03 Javascript
基于jQuery实现左右div自适应高度完全相同的代码
2012/08/09 Javascript
js闭包实例汇总
2014/11/09 Javascript
javascript面向对象之访问对象属性的两种方式分析
2015/01/13 Javascript
基于jquery实现一个滚动的分步注册向导-附源码
2015/08/26 Javascript
Vue.js中用v-bind绑定class的注意事项
2016/12/13 Javascript
jQuery实现手机上输入后隐藏键盘功能
2017/01/04 Javascript
Angular中ng-bind和ng-model的区别实例详解
2017/04/10 Javascript
js异步上传多张图片插件的使用方法
2018/10/22 Javascript
Python的装饰器模式与面向切面编程详解
2015/06/21 Python
python面向对象_详谈类的继承与方法的重载
2017/06/07 Python
用python实现百度翻译的示例代码
2018/03/09 Python
python时间日期函数与利用pandas进行时间序列处理详解
2018/03/13 Python
Python实现查询某个目录下修改时间最新的文件示例
2018/08/29 Python
解决python3中cv2读取中文路径的问题
2018/12/05 Python
python获取地震信息 微信实时推送
2019/06/18 Python
使用python获取(宜宾市地震信息)地震信息
2019/06/20 Python
详解Python 多线程 Timer定时器/延迟执行、Event事件
2019/06/27 Python
python中的列表与元组的使用
2019/08/08 Python
Python3实现配置文件差异对比脚本
2019/11/18 Python
对python中assert、isinstance的用法详解
2019/11/27 Python
Python 面向对象部分知识点小结
2020/03/09 Python
Python新手如何进行闭包时绑定变量操作
2020/05/29 Python
一年级数学教学反思
2014/02/01 职场文书
幼儿园教师教学反思
2014/02/06 职场文书
2014全国两会心得体会
2014/03/17 职场文书
创先争优承诺书范文
2014/03/31 职场文书
党性教育心得体会
2014/09/03 职场文书
个人租房协议书(范本)
2014/10/14 职场文书
中学生自我评价范文
2015/03/03 职场文书
幼儿园教师管理制度
2015/08/05 职场文书