杂记
- 找寻以来的过程是自当前目录依次向上找的过程,直到搜寻到根目录活搜寻到对应的以来位置
- vite在生产环境会全权交割rollup的库完成生成环境的打包构建
- 有的第三方包以commonjs规范到处(module.exports)-- vite会做依赖预构建
- 依赖预构建: vite会找到对应的以来,然后调用esbuild(对js语法进行处理的库),将其它规范的代码转换成esmodule规范,然后放到当前目录下的node_modules/.vite/deps。同时对esmodule规范的各个模块进行统一集成,最后只生成一个或者两个文件
- 解决了3个问题
- 不同的第三方包会有不同的导出格式(vite无法约束的事情)
- 对路径的处理上可以直接使用.vite/deps,方便路径重写
- 网络多包传输的性能问题(原生esmodule规范不敢支持node_module的原因之一)
vite配置文件语法提示
vite环境变量处理
可以用envPrefix更改客户端前缀
vite怎么让浏览器识别.vue文件
vite服务器会通过正则读取匹配是否为vue文件,然后将其编译为js代码,以便浏览器识别
vite是如何处理css
CSS模块化配置
css预处理器(less/sass)全局参数(preprocessorOptions)
postcss
postcss涵盖less或sass的功能,但是现在不维护less和sass,所以需要自己用less处理器编译后再由postcss做降级处理
Path路径处理
1、路径为./时,是相对于当前文件(main.js)而言的路径,而执行node file时的路径是相对当前执行环境,但是打包文件时最终要访问的是绝对路径。所以需要采用__dirName获取绝对路径进行拼接
Vite对svg的处理
svg可以通过.style.fill更改颜色
vite在生产环境中对静态资源的处理
超过这个大小的资源则会按照base64格式打包
vite插件
ejs语法
在服务端中使用比较多。具体可以了解些EJS是什么