发表于: 2019-12-20 00:00:19

1 1221


今日完成的事

今天继续学习了webpack

打包图片

file-loader url-loader

file-loader可以把图片解析成一个文件输出来

url-loader可以把比较小的图片解析成base64

安装                                              

配置

但是打包出来的图片名跟原先是不一样的,设置图片名

转化为64

请求服务器上的图片

webpack解析es6es7

@bable/core   bable核心模块

bable-loader   webpackbable的桥梁,解析js代码的一个加载器

@babel/preset-env   es6转化成es5插件的一个集合,把es6

转化成es5

安装

配置webpack

bable还需要新建一个.babelrc的文件

打包之后es6的语法就转变为es5的语法了

但是一些高版本的API还是无法转化比如promise等,这时需要其他配置

首先安装npm install --save core-js@3

然后配置.babelrc

Webpack跨域配置,

devServer里面设置请求代理

Webpack制造假数据

首先在devServer

里面配置before

然后在js里发送请求

配置全局模块,把需要的插件部署到全局。

add-asset-html-cdn-webpack-plugin

安装

配置webpack

 

ProvidePlugin自动加载模块,不用到处import 需要安装jq的包,这是webpack自带的。

expose-loader 暴露在window下,

安装

代码排查 sourceMap

·         development模式:cheap-module-eval-source-map开发环境

·         production模式:cheap-module-source-map

故意写错一行代码

准确告诉你多少行代码。不同的模式用不同的sourceMap

清除没有用的模块

Tree-shaking &scopeHistiong

package.json里面配置

排除不想清除的模块

这里指所以文件下除了css文件

 

热更新不刷新页面情况下,更改代码

Css在不分离的情况下devServerhot设置为true

但是有时候会有bug所以需要webpack的内置插件来辅助一下

Js热更新,js热更新需要在js页面设置,

当设置了  new webpack.HotModuleReplacementPlugin()

之后module.hottrue,把需要热更新的js文件放到module.hot里面,第二个参数为一个函数

懒加载

动态加载模块叫做懒加载

懒加载用的是import返回的是一个promise对象,因为default是关键字,所以需要把名字给替换掉,

然后在webpack的出口文件设置chunckfilename

第三方模块分离出来打包

运用optimization里面的一个参数

resolve解析

extensions 添加扩展名进行匹配

alias 设置别名


返回列表 返回列表
评论

    分享到