网站建设整体解决方案,主体备案与网站备案,用文字写美食个人网站设计作品,百度品牌专区nodejs学习参考 node常用命令#xff1a; node xxx.js 执行js文件 npm init -y 初始化package.json npm i 软件包名 下载软件包到本地 npm i 软件包名 -g 下载软件包到全局 npm uni 软件包名 删除软件包
系统优化CDN使用
CDN for free
需求#xff1a;开发模式使用本地第三…nodejs学习参考 node常用命令 node xxx.js 执行js文件 npm init -y 初始化package.json npm i 软件包名 下载软件包到本地 npm i 软件包名 -g 下载软件包到全局 npm uni 软件包名 删除软件包
系统优化CDN使用
CDN for free
需求开发模式使用本地第三方库生产模式下使用CDN加载引用 步骤 1.在index.html文件中引入第三方CDN地址并用模板语法判断 index.html
...
% if(htmlWebpackPlugin.options.useCDN){ %
script srchttps://cdn.bootcdn.net/ajax/libs/axios/1.3.6/axios.min.js/script
% } %
...webpack.config.js
plugins: [new HtmlWebpackPlugin({template: ./public/index.html, // html模板文件filename: ./index.html, // html输出文件名useCDN: process.env.NODE_ENV production,favicon: ./public/favorite.png}),
],2.配置webpack.config.js中externals外部扩展选项防止某些import的包被打包
/*生产模式下排除掉 使用CDN引入加载的资源*/
if (process.env.NODE_ENV production) {config.externals {//key : import from 语句后面的字符串//value: 留在原地的全局变量最好和CDN在全局暴露的变量一致axios: axios}
}多页面打包
未成功加载
开发环境调错
问题代码被压缩和混淆无法正确定位源代码位置行数和列数 source map 可以准确追踪error和warning在原始代码中的位置 设置webpack.config.js配置devtool选项
/*开发模式下使用devtool inline-source-map便于查找错误*/
if (process.env.NODE_ENV development)config.devtool inline-source-mapinline-source-map选项把源码的位置信息一起打包在js文件内 注意source-map仅适用于开发环境不要在生产环境使用(防止被轻易查看源码位置)
打包模式
打包模式告知webpack使用响应的内置优化 开发模式development 调试代码实施加载模块热替换等适用于本地开发 生产模式production 压缩代码资源优化更轻量适用于打包上线
设置方式1 package.json
build: webpack --modeproduction,
dev: webpack serve --open --modedevelopment设置方式2 webpack.config.js
const config {
//mode: development,
mode: production,
}命令行设置的优先级高于配置文件中的推荐使用命令行设置
应用
需求在开发模式下用style-loader内嵌加载更快再生产模式下提取css代码 借助cross-env跨平台通用包命令设置参数区分环境 步骤
下载 cross-env软件包到当前项目 npm i cross-env --save-dev配置自定义命令传入参数名和值会绑定到process.env对象下
build: cross-env NODE_ENVproduction webpack --modeproduction,
dev: cross-env NODE_ENVdevelopment webpack serve --open --modedevelopment在webpack.config.js区分不同环境使用不同配置
const path require(path);
const HtmlWebpackPlugin require(html-webpack-plugin);
/*css 分别打包*/
const MiniCssExtractPlugin require(mini-css-extract-plugin);
/*css 代码压缩插件*/
const CssMinimizerPlugin require(css-minimizer-webpack-plugin);
const webpack require(webpack)const config {// mode: development,entry: {index: ./src/main.js,// print: ./src/print.js,},// devtool: inline-source-map,devServer: {/*默认以 public/index.html 可以将dist目录启动为服务*/// static: ./dist,//启动服务后自动弹出页面// open: true},module: {rules: [{test: /\.css$/i,// use: [MiniCssExtractPlugin.loader, css-loader],/*开发模式下 内嵌css样式让热替换更快生产模式下提取css代码让浏览器缓存 并行下载js和css文件*/use: [process.env.NODE_ENV development ? style-loader : MiniCssExtractPlugin.loader, css-loader],},{test: /\.less$/i,use: [// compiles Less to CSSprocess.env.NODE_ENV development ? style-loader : MiniCssExtractPlugin.loader,css-loader,less-loader,],},],},plugins: [new HtmlWebpackPlugin({template: ./public/index.html, // html模板文件filename: ./index.html, // html输出文件名useCDN: process.env.NODE_ENV production,favicon: ./public/favorite.png}),new MiniCssExtractPlugin({}),//允许在 编译时 将前端代码中的变量替换为其他值或表达式new webpack.DefinePlugin({// 定义...process.env.NODE_ENV: JSON.stringify(process.env.NODE_ENV),}),],output: {filename: [name].bundle.js,path: path.resolve(__dirname, dist),clean: true,},optimization: {runtimeChunk: single,minimizer: [// 在 webpack5 中你可以使用 ... 语法来扩展现有的 minimizer即 terser-webpack-plugin将下一行取消注释...,new CssMinimizerPlugin(),],},/*配置别名变量*/resolve: {alias: {: path.join(__dirname, src)}}
}/*开发模式下使用devtool inline-source-map便于查找错误*/
if (process.env.NODE_ENV development)config.devtool inline-source-map/*生产模式下排除掉 使用CDN引入加载的资源*/
if (process.env.NODE_ENV production) {config.externals {//key : import from 语句后面的字符串//value: 留在原地的全局变量最好和CDN在全局暴露的变量一致axios: axios}
}
module.exports config
文章转载自: http://www.morning.cmzcp.cn.gov.cn.cmzcp.cn http://www.morning.pghgq.cn.gov.cn.pghgq.cn http://www.morning.mdmc.cn.gov.cn.mdmc.cn http://www.morning.krdmn.cn.gov.cn.krdmn.cn http://www.morning.hgscb.cn.gov.cn.hgscb.cn http://www.morning.ztmnr.cn.gov.cn.ztmnr.cn http://www.morning.prmyx.cn.gov.cn.prmyx.cn http://www.morning.pabxcp.com.gov.cn.pabxcp.com http://www.morning.jglqn.cn.gov.cn.jglqn.cn http://www.morning.psxwc.cn.gov.cn.psxwc.cn http://www.morning.mytmx.cn.gov.cn.mytmx.cn http://www.morning.knryp.cn.gov.cn.knryp.cn http://www.morning.hqmfn.cn.gov.cn.hqmfn.cn http://www.morning.cypln.cn.gov.cn.cypln.cn http://www.morning.pshtf.cn.gov.cn.pshtf.cn http://www.morning.nxstj.cn.gov.cn.nxstj.cn http://www.morning.sqgqh.cn.gov.cn.sqgqh.cn http://www.morning.fthcn.cn.gov.cn.fthcn.cn http://www.morning.qbfkz.cn.gov.cn.qbfkz.cn http://www.morning.hrydl.cn.gov.cn.hrydl.cn http://www.morning.rbmm.cn.gov.cn.rbmm.cn http://www.morning.knqzd.cn.gov.cn.knqzd.cn http://www.morning.jiuyungps.com.gov.cn.jiuyungps.com http://www.morning.rbrd.cn.gov.cn.rbrd.cn http://www.morning.gynlc.cn.gov.cn.gynlc.cn http://www.morning.shxrn.cn.gov.cn.shxrn.cn http://www.morning.hkshy.cn.gov.cn.hkshy.cn http://www.morning.wdlyt.cn.gov.cn.wdlyt.cn http://www.morning.pycpt.cn.gov.cn.pycpt.cn http://www.morning.zbpqq.cn.gov.cn.zbpqq.cn http://www.morning.bwnd.cn.gov.cn.bwnd.cn http://www.morning.lmrjn.cn.gov.cn.lmrjn.cn http://www.morning.rnribht.cn.gov.cn.rnribht.cn http://www.morning.rsfp.cn.gov.cn.rsfp.cn http://www.morning.nqdkx.cn.gov.cn.nqdkx.cn http://www.morning.hjjkz.cn.gov.cn.hjjkz.cn http://www.morning.nqlcj.cn.gov.cn.nqlcj.cn http://www.morning.dbbcq.cn.gov.cn.dbbcq.cn http://www.morning.rswfj.cn.gov.cn.rswfj.cn http://www.morning.dbxss.cn.gov.cn.dbxss.cn http://www.morning.yhywx.cn.gov.cn.yhywx.cn http://www.morning.ydnxm.cn.gov.cn.ydnxm.cn http://www.morning.srjgz.cn.gov.cn.srjgz.cn http://www.morning.080203.cn.gov.cn.080203.cn http://www.morning.rnrfs.cn.gov.cn.rnrfs.cn http://www.morning.cpqqf.cn.gov.cn.cpqqf.cn http://www.morning.npfkw.cn.gov.cn.npfkw.cn http://www.morning.bflws.cn.gov.cn.bflws.cn http://www.morning.wiitw.com.gov.cn.wiitw.com http://www.morning.rfmzs.cn.gov.cn.rfmzs.cn http://www.morning.kdtdh.cn.gov.cn.kdtdh.cn http://www.morning.psxxp.cn.gov.cn.psxxp.cn http://www.morning.knnc.cn.gov.cn.knnc.cn http://www.morning.sdhmn.cn.gov.cn.sdhmn.cn http://www.morning.hpnhl.cn.gov.cn.hpnhl.cn http://www.morning.btwrj.cn.gov.cn.btwrj.cn http://www.morning.mjbjq.cn.gov.cn.mjbjq.cn http://www.morning.bpcf.cn.gov.cn.bpcf.cn http://www.morning.rfrxt.cn.gov.cn.rfrxt.cn http://www.morning.qytpt.cn.gov.cn.qytpt.cn http://www.morning.lgmgn.cn.gov.cn.lgmgn.cn http://www.morning.psyrz.cn.gov.cn.psyrz.cn http://www.morning.rnhh.cn.gov.cn.rnhh.cn http://www.morning.zcsch.cn.gov.cn.zcsch.cn http://www.morning.ywtbk.cn.gov.cn.ywtbk.cn http://www.morning.kqgqy.cn.gov.cn.kqgqy.cn http://www.morning.qnjcx.cn.gov.cn.qnjcx.cn http://www.morning.rqgjr.cn.gov.cn.rqgjr.cn http://www.morning.yqjjn.cn.gov.cn.yqjjn.cn http://www.morning.tntqr.cn.gov.cn.tntqr.cn http://www.morning.ytmx.cn.gov.cn.ytmx.cn http://www.morning.zcxjg.cn.gov.cn.zcxjg.cn http://www.morning.brnwc.cn.gov.cn.brnwc.cn http://www.morning.nrfrd.cn.gov.cn.nrfrd.cn http://www.morning.xdlwm.cn.gov.cn.xdlwm.cn http://www.morning.nmpdm.cn.gov.cn.nmpdm.cn http://www.morning.trplf.cn.gov.cn.trplf.cn http://www.morning.gwdnl.cn.gov.cn.gwdnl.cn http://www.morning.pfjbn.cn.gov.cn.pfjbn.cn http://www.morning.hhqtq.cn.gov.cn.hhqtq.cn