webpack

webpack成神之路(四)

2019-05-13  本文已影响17人  AAA前端
  1. 现在我们有些基层模块依赖于一些全局变量,比如jquery.我们开始怎么设置全局变量.以jquery为例;
import $ from 'jquery';
console.log($)
image.png

pre 前面执行的loader
normal 普通loader
内联的loader
post 后置loader

import $ from 'expose-loader?$!jquery';  // 暴露jquery 为 $ 
console.log($)
console.log(window.$)

*再来我们不想再要用的js中引入jquery .我们想在每个模块中注入$对象,直接使用;

const Webpack = require('webpack');
module.exports = {
  plugins: [ 
        new Webpack.ProvidePlugin({
            $: 'jquery'
        })
  ]
}

    externals:{
        jquery: '$'
    },

image.png
  1. 打包图片方式有几种

js中引入图片
css中引入比如背景图
html 中img 直接引入

  1. js中;


    image.png
import pic  from './img/1.jpg';
let img = new Image();
img.src = pic;
document.body.appendChild(img)
image.png
           {
                test: /\.html$/,
                use: 'html-withimg-loader'
            },
image.png image.png
  1. 接下来我们把css img等在打包后进行分类,我们可以在'url-loader'下添加outputPath: 'img/',并打包


    image.png
  1. 我如果打包后的文件要放到cdn上,所有的资源都指向同一个域名,我们就可以在webpack.config.js中配置 publicPath;
上一篇下一篇

猜你喜欢

热点阅读