tsconfig.json 中使用 paths 来映射文件,经过 tsc 编译后映射路径还是编译之前的?

2020-06-16 15:48:07 +08:00
 cl903254852

tsconfig.json 内 paths 的配置如下:

"compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "baseUrl": ".",
    "paths": {
      "services/*": ["app/services/*"]
    }
  }

编译前:

编译后:

这样会报错:can not fond module xxx

尝试使用了module-alias@momothepug/tsmodule-alias等插件都无效,原因是因为使用了 import x from 'x' 语法。 但我仍然想用 import 语法来引用模块。

有大佬遇到过这种问题吗? 如何解决?😞😞😞

2001 次点击
所在节点    程序员
2 条回复
buhi
2020-06-16 16:40:43 +08:00
是的 tsc 不会去转换路径, 需要你自己解决, 如果是 webpack, 就是用 resolve.modules 或者 resolve.alias, 如果是 nodejs, 就是用类似 https://github.com/dividab/tsconfig-paths 的东西
dubenshu
2020-06-17 11:24:20 +08:00
可以考虑使用 babel 来编译

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/682072

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX