Webpack如何引入bootstrap的方法
Bootstrap中是一种事实上的界面标准,标准到现在的网站大量的使用它。如果可以使用webpack引入的bootstrapcss,就可以一个npminstall完成项目的依赖,而不必手工的添加到html内。
本来以为在入口文件内加一行就行:
import'bootstrap/dist/css/bootstrapcss'
然后安装依赖:
npmibootstrapurlurl-loaderstyle-loadercss-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:
//chtmlHome Profile Messages
再次执行转译:
webpack
打开浏览器:
openchtml
看到bootstrap那熟悉而太熟悉的界面。
引入jquery
如果需要使用bootstrap的js插件的话,就必须首先引入jquery。引用jquery的一个方法是使用webpack插件。
首先安装jquery:
npmijquery
其次使用插件装入jquery,方法是修改webpack的配置文件,加入:
plugins:[ newwebpackProvidePlugin({ $:"jquery", jQuery:"jquery" }) ]
在入口文件内加入代码来做验证:
$("body")append("helloworld")
如果成功,说明jquery加载成功。这样你就可以在入口js文件内加载bootstrapjs了:
import'bootstrap/dist/js/bootstrapjs'
排除错误
我确实在引入bootstrap的时候,遇到一个神奇的错误。在webpack转译时报错,css-loader,unknownword样子的错误。对webpackconfigjs文件加入一个include属性并指向到不存在的目录即可。
{ test:/\css$/, include:[ pathresolve(__dirname,"not_exist_path") ], loader:"style!css" }
原始的issue在此:https://githubcom/webpack/cs。我看看看到此答案时以为是个玩笑。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。