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代码
Aug 13 Javascript
获取下拉列表框的值是数组,split,$.inArray示例
Nov 13 Javascript
VS2008中使用JavaScript调用WebServices
Dec 18 Javascript
Javascript对象字面量的理解
Jun 22 Javascript
JS本地刷新返回上一页代码
Jul 25 Javascript
vue.js 表格分页ajax 异步加载数据
Oct 18 Javascript
原生js实现弹出层效果
Jan 20 Javascript
基于vue+ bootstrap实现图片上传图片展示功能
May 17 Javascript
Vue v2.4中新增的$attrs及$listeners属性使用教程
Jan 08 Javascript
详解关于webpack多入口热加载很慢的原因
Apr 24 Javascript
jQuery实现聊天对话框
Feb 08 jQuery
JavaScript 实现自己的安卓手机自动化工具脚本(推荐)
May 13 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作的文本留言本的例子(四)
2006/10/09 PHP
通过Email发送PHP错误的方法
2015/07/20 PHP
一波PHP中cURL库的常见用法代码示例
2016/05/06 PHP
Yii2框架BootStrap样式的深入理解
2016/11/07 PHP
PHP实现的文件上传类与用法详解
2017/07/05 PHP
PHP实现微信提现功能(微信商城)
2019/11/21 PHP
Laravel5.5+ 使用API Resources快速输出自定义JSON方法详解
2020/04/06 PHP
高性能WEB开发 flush让页面分块,逐步呈现 flush让页面分块,逐步呈现
2010/06/19 Javascript
jQuery+CSS 实现随滚动条增减的汽水瓶中的液体效果
2011/09/26 Javascript
用js实现输入提示(自动完成)的实例代码
2013/06/14 Javascript
基于jQuery的Web上传插件Uploadify使用示例
2016/05/19 Javascript
用JS写的一个Ajax库(实例代码)
2016/08/06 Javascript
Bootstrap组合上、下拉框简单实现代码
2017/03/06 Javascript
AngularJS动态绑定ng-options的ng-model实例代码
2017/06/21 Javascript
一个基于react的图片裁剪组件示例
2018/04/18 Javascript
jQuery操作cookie的示例代码
2019/06/05 jQuery
tweenjs缓动算法的使用实例分析
2019/08/26 Javascript
[49:56]VG vs Optic 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
深度剖析使用python抓取网页正文的源码
2014/06/11 Python
解读Django框架中的低层次缓存API
2015/07/24 Python
Python numpy生成矩阵、串联矩阵代码分享
2017/12/04 Python
pandas删除指定行详解
2019/04/04 Python
python中selenium操作下拉滚动条的几种方法汇总
2019/07/14 Python
利用setuptools打包python程序的方法步骤
2020/01/18 Python
Python+Selenium随机生成手机验证码并检查页面上是否弹出重复手机号码提示框
2020/09/21 Python
Keras保存模型并载入模型继续训练的实现
2021/02/20 Python
使用css3匹配手机屏幕横竖状态
2014/01/27 HTML / CSS
Sephora丝芙兰印尼官方网站:购买化妆品和护肤品
2018/07/02 全球购物
动物科学专业毕业生的自我评价
2013/11/29 职场文书
简历的自我评价范文
2014/02/04 职场文书
勾股定理课后反思
2014/04/26 职场文书
查摆问题整改措施范文
2014/10/11 职场文书
2015双创工作总结
2015/07/24 职场文书
2015年财务人员个人工作总结
2015/07/27 职场文书
python中字符串String及其常见操作指南(方法、函数)
2022/04/06 Python
纯CSS实现一个简单步骤条的示例代码
2022/07/15 HTML / CSS