TSConfig文件详解12

编译器配置项-compilerOptions

模块相关(三)

模块解决方案 - moduleResolution

默认值:如果Classic if module选项为 AMDUMDSystem或者 ES6/ES2015,默认值为classic;如果module选项为 node16或者nodenext,默认值为node16或者nodenext;其他情况,默认值为node

可以指定的模块解决方案的值为:

  • 'node16'或者'nodenext':适用于现代版本的Node.jsNode.jsv12 开始,之后的版本模块导入支持两种不同的算法,即ECMAScript imports 和 CommonJS require。当moduleResolution选项值和module选项值结合使用时,会根据代码中实际使用的importrequire选择正确的算法进行解析模块导入。
  • 'node10' (之前的值为'node'):适用于Node.jsv10之前的版本,仅支持CommonJS的require算法( 在现代代码开发中,你可能不需要设置为node10)。
  • 'bundler':适用于使用打包器。就像node16nodenext,支持package.json中的"imports""exports",不像Node.js解决模式,bundler在导入相对路径的文件时不需要文件扩展名。
  • 'classic'适用于TypeScript 1.6之前的版本,现在不应该使用了。

有一些参考页解释了TypeScript 模块解析背后的理论 以及每个选项的详细信息

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容