在导入类似 moment 这样的开发工具时,因为没有es的import导入,所以我们可能会使用

1
import * as moment from 'moment

不过最近发现通过此种方式开发插件库,在应用端会报找不到函数

研究后发现可以通过ts的配置来修复此问题

1
2
3
4
compilerOptions: {
"esModuleInterop": true, // 兼容CommonJS/AMD/UMD (官方文档说此配置项会自动打开allowSyntheticDefaultImports)
"allowSyntheticDefaultImports": true, // 兼容CommonJS/AMD/UMD
}

ES 模块互操作 - esModuleInterop