您的位置:首页 > 教育 > 锐评 > 开源知识管理系统_域名备案信息查询系统_友情链接源码_八大营销方式有哪几种

开源知识管理系统_域名备案信息查询系统_友情链接源码_八大营销方式有哪几种

2025/4/18 14:29:19 来源:https://blog.csdn.net/lucky_jiexia/article/details/147173148  浏览:    关键词:开源知识管理系统_域名备案信息查询系统_友情链接源码_八大营销方式有哪几种
开源知识管理系统_域名备案信息查询系统_友情链接源码_八大营销方式有哪几种

1、webpack

webpack打包工具(重点在于配置和使用,原理并不高优。只在开发环境应用,不在线上环境运行),压缩整合代码,让网页加载更快。

前端代码为什么要进行构建和打包?

体积更好(Tree-shaking、压缩、合并),加载更快
编译高级语法(scss、TS、ES6+、模块化)
兼容性和错误检查(Ployfill、postcss、eslint)
统一高效的开发环境,统一的构建流程和产出标准,集成公司构建规范(提测、上线)

基本配置、高级配置

1)基本配置

拆分配置和merge:common dev prod配置
启动本地服务 webpack-dev-server
处理ES6 babel-loader
处理样式 style-loader css-loader less-loader postcss-loader(loader执行顺序从后往前)
处理图片 file-loader url-loader

2)高级配置

多入口
抽离css
抽离公共代码
异步加载js(懒加载)
处理JSX babel-loader
处理Vue vue-loader

module chunk bundle分别是什么意思?区别?

module 各种源码文件,webpack中一切皆模块,被引入的都可以看作模块,js、css、img
chunk 多模块合成的(类似在内存中还没产出的代码块),entry splitChunk import()生成chunk
bundle 最终的输出文件

webpack性能优化

1)优化打包构建速度

(生产环境)
优化babel-loader:加cacheDirectory、加include或exclude
IgnorePlugin
noParse 引入的时候避免打包的东西
happyPack 多进程打包
ParallelUglifyPlugin 多进程压缩JS
(不能用于生产环境)
自动刷新 整个网页全部刷新,速度比较慢;整个网页全部刷新,状态全丢失
热更新 新代码生效,网页不刷新,状态不丢失
DllPlugin动态链接库插件,前端框架vue React,体积大构建慢。较稳定,不常升级版本。同一个版本只构建一次即可,不用每次都重新构建。

2)优化产出代码执行效率

小图片base64编码
bundle+hash
懒加载
提取公共代码
使用CDN加速 img、css、js推到CDN上
使用production 自动开启代码压缩;Vue和React等会自动删掉调试代码;启动Tree-Shaking
使用Scope Hosting 多个函数合并成一个函数。代码体积更小,创建函数作用域更少,代码可读性更好

构建流程概述(打包流程)

参考:webpack构建流程

loader和plugin区别?

loader模块转换器
plugin扩展插件

常见loader和plugin?

参考:loader和plugin

tree Shaking,什么时候失效

2、vite

极快的开发服务器启动(基于原生ESM的按需编译)
闪电般的HMR
开箱即用的现代化前端支持(ts、css)
生产构建使用rollup

预加载

为什么本地启动快

3、babel

babel从ES高级语法向低级语法转变

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com