继续维护小窝,Jest 运行报错了

2021-11-14

下午继续写代码完善新版小窝后台,主要完善了下媒体上传和编辑页面的逻辑,把 Uploader 组件也做了修缮,旧版 Class 组件的 Bug 没找出原因就在新版里面被解决了。它该做的事情很简单,无论是选择还是拖拽,最终返回 File 对象给父组件处理就完事了。

就是在给 classname 工具函数写测试的时候发现 Jest 运行报错,提示说是 Vite 的 import.env 写法有问题,它不认。

// export const is_dev = import.meta.env.DEV;
error TS1343: The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'esnext', or 'system'.

TSConfig 文件我确认过了,肯定是 ESNext,就好奇会不会是 ts-jest 本身不认。找了一些相似的问题,其中给出的解决方案是安装 babel-vite-preset 这个包,实验了下并没有什么卵用。@Innei 说因为 Jest 根本没用 Babel 也没用到 Vite。

我想到一个巧妙规避的办法,引入之后把它的值改掉,但亲自实验了下发现并不行 🙅‍♂️。所以说这块依旧是个谜,还需要日后研究。

配乐 郁闷
概览页 时间轴
奇趣音乐盒 技术源于 Kico Player
Emmm,这里是歌词君