webpack 引入 bootstrap

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

  首先咱们在前端刚兴起的时候,是在html页面通过<script src=‘./js/bootstrap.js‘> <link href=‘./css/bootstrap.css‘>俩个标签引入bootstrap,在webpack中我们要引入它,也要分这俩个部分。

  1、 npm install bootstrap --save-dev    或者使用淘宝镜像   cnpm install bootstrap --save-dev;

    然后咱们在代码中引入bootstrap.js

    import ‘bootstrap/dist/js/bootstrap.js‘;

    打包然后会发现有一个错误,没有找到全局的 jquery,需要我们去包管理器中下载jquery--  npm install jquery--save-dev

    配置plugins插件部分:

    plugins:[
        new webpack.ProvidePlugin({
            $: "jquery",
            jQuery: "jquery"
        })

    ]

    在我们页面中输出一行 cosole.log($(document.body)) ; 可以看到输出内容是一个Jquery对象,说明jquery引入成功,但是bootstrap还是抛出了一个错误  “没有找到全局的 jquery”.其实我们可以换个思路,webpack是一个模块化打包工具,它打包的第三方模块是经过处理的,不会在全局创建一个接口,而bootstrap文件依赖于全局jquery,所以报错。

    首先来介绍我最为推荐的方法:ProvidePlugin + expose-loader

        plugins:[
		new webpack.ProvidePlugin({
		    $: "jquery",
      		    jQuery: "jquery",
      		    ‘window.$‘:‘jquery‘,
      		    ‘window.jQuery‘:‘jquery‘
		})

	]

  

       {
                test:require.resolve(‘jquery‘),
                loader:‘expose-loader?$!expose-loader?jQuery‘
            },

    ProvidePlugin的机制是:当webpack加载到某个js模块里,出现了未定义且名称符合(字符串完全匹配)配置中key的变量时,会自动require配置中value所指定的js模块。

如上述例子,当某个老式插件使用了jQuery.fn.extend(object),那么webpack就会自动引入jquery(此处我是用NPM的版本,我也推荐使用NPM的版本)。

另外,使用ProvidePlugin还有个好处,就是,你自己写的代码里,再!也!不!用!require!jQuery!啦!毕竟少写一句是一句嘛哈哈哈。

    有了ProvidePlugin为嘛还需要expose-loader?问得好,如果你所有的jQuery插件都是用webpack来加载的话,的确用ProvidePlugin就足够了;但理想是丰满的,现实却是骨感的,总有那么些需求是只能用<script>来加载的。

    第二部分 引入bootstrap.css

    第三部分 打造webpack 自定义bootstrap

    后续内容.....稍后

				
时间: 2024-08-02 04:09:11

webpack 引入 bootstrap的相关文章

vue2.x利用脚手架快速构建项目并引入bootstrap、jquery

要使用vue-cli脚手架搭建项目,首先需要安装node.js Node.js官网:https://nodejs.org/en/download/ 选择你对应的系统即可下载,下载完成后傻瓜式安装即可. 安装完成之后打开cmd,输入node -v 出现版本号即安装成功 接下来便可使用脚手架快速构建你的项目了: npm install -g vue-cli                   全局安装vue-cli vue init webpack test                 生成项目

如何在vue里引入Bootstrap

一.引入jquery 步骤: 1. 安装jquery $ npm install jquery --save-dev 2.在webpack.config.js 添加内容 + const webpack = require("webpack"); module.exports = { entry: './index.js', output: { path: path.join(__dirname, './dist'), publicPath: '/dist/', filename: 'i

Vue中引入bootstrap导致的CSS问题

最近在进行vue.js+webpack进行模块化开发的时候,遇到一个奇怪的问题. 问题是这样的: 1. 在main.js文件中引入bootstrap的js和css. 2. 自己写了一个Header.vue模块,其中的导航条使用的bootstrap的class和自己的class. <ul class="navbar-nav my-navBar" id="my-navBar"> 3. 在Header.vue中定义了一些ul li 和 a 标签的样式. ul.

laravel 6.* 引入bootstrap报错问题解决方案

以下命令均在git管理员方式运行下执行 Laravel 项目中使用 Bootstrap 前端框架,需要先执行以下命令: $ composer require laravel/ui --dev 上面的命令安装完成后,使用以下命令来引入 Bootstrap : $ php artisan ui bootstrap 更改引导文件package.json 建议直接导入以下内容,防止后续报错: { "private": true, "scripts": { "dev

在Vue-cli项目中引入Bootstrap

(1)到bootstrap官网下载所需版本的bootstrap.zip文件. (2)将bootstrap.min.css以及bootstrap.min.js解压到assets文件夹,另外还需要将fonts字体文件夹解压到src文件夹下面. (3)在main.js文件中通过 import './assets/bootstrap.min.css' import './assets/bootstrap.min' 引入bootstrap,引入完成之后,就可以在组件中使用bootstrap了. 另外需要注

如何在jsp中引入bootstrap

如何在jsp中引入bootstrap包: 1.首先在http://getbootstrap.com/上下载Bootstrap的最新版. 您会看到两个按钮: Download Bootstrap:下载 Bootstrap.点击该按钮,您可以下载 Bootstrap CSS.JavaScript 和字体的预编译的压缩版本.不包含文档和最初的源代码文件. Download Source:下载源代码.点击该按钮,您可以直接从 from 上得到最新的 Bootstrap LESS 和 JavaScript

webpack中字体配置,可以引入bootstrap

{test:/\.(eot|ttf|woff|woff2|svg)$/,loader:'file?name=fonts/[name].[ext]'} 将css中用到的字体全部提取存放到fonts目录下,fonts目录是相对output.path目录而言的

webpack2引入bootstrap的坑

在webpack官网教程的代码分离-css章节中,给出的例子是这样的. //安装 ExtractTextWebpackPlugin 如下 npm install --save-dev extract-text-webpack-plugin //配置webpack.config.js var ExtractTextPlugin = require('extract-text-webpack-plugin'); module.exports = { module: { rules: [{ test:

HTML引入bootstrap

Bootstrap的引用方法分为两种:1)将Bootstrap下载到本地引用  2)在线引用Bootstrap 引用方法 1) 将Bootstrap下载到桌面然后解压缩(当然你可以将解压缩的Bootstrap文件放到任意位置,但是解压缩的Bootstrap文件必须和HTML在同一目录下),我自己写的HTML文件也在桌面上,我下载的是bootstrap-3.3.7-dist. 解压缩后的bootstrap-3.3.7-dist <!DOCTYPE html><html lang="