如何解决jest 文件转换,适用于 esm 模块或 commonjs
import path from 'path';
export const process = (src: string,filename: string): string => {
return `module.exports = ${JSON.stringify(path.basename(filename))};`;
};
然后在 jest.config.ts
transform: {
// rest
'^.+\\.csv$': path.join(__dirname,'./fileTransform.js'),
我正在尝试将包升级为 esm 模块,并且我希望转换在被 esm 或 commonjs 模块使用时工作,我尝试将代码重写为:
import path from 'path';
const createExport = (filename: string) =>
`
if (typeof module === 'object' && module) {
Object.defineProperty(exports,"__esModule",{
value: true
});
module.exports = ${JSON.stringify(path.basename(filename))}
} else {
Object.defineProperty(exports,{
value: true
});
exports.default = ${JSON.stringify(path.basename(filename))};
}
`
.trim()
.replace(/^\s{4}/g,'');
export const process = (src: string,filename: string): string => {
const exp = createExport(filename);
return exp;
};
但我收到此错误:
TypeError:Jest:转换必须导出某些内容。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。