javascript - 在 Typescript 中编译绝对导入的最干净的解决方案
问题描述
我想在 Typescript 中使用绝对导入,所以我可以这样做:
import something from "utils/subdir";
代替
import something from "../../../utils/subdir";
我有以下配置tsconfig.json
:
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"sourceMap": true,
"outDir": "lib",
"declaration": true,
"strict": true,
"noImplicitAny": true,
"moduleResolution": "node",
"baseUrl": "src",
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true,
},
"include": ["src/**/*"],
"exclude": ["**/*.test.ts"]
}
但是,在编译时,我也得到了带有绝对导入的 Javascript 文件。所以我在一天结束时得到这样的东西:
const something = require("utils/subdir");
所以我不能使用它,因为我得到了错误:
Error: Cannot find module 'utils/subdir'
我的问题是:处理这个问题的最干净的方法是什么?我读过我们可以先编译代码,tsc
然后使用babel
或直接使用babel
来编译代码。有没有办法不使用 babel 来解决这个问题?
解决方案
推荐阅读
- html - 欧元符号 (€) 呈现为 Û,仅在 iPhone 上
- excel - 将工作表复制到另一个工作簿并使用熊猫转换为数据透视表
- python-3.x - 不更新数据库中的天数(Python 和 sqlite)
- c++ - 如何避免符号表查找中的歧义?
- java - 将 SQL 查询实现为两个多对一关系的 JPA 标准
- javascript - 对两个数组执行查找并将第二个数组中的元素添加到第一个数组
- python - 可以让 Getch(或类似的东西)接受退格吗?
- codenameone - 如何使 Tree 中的展开/折叠动画平滑类似于 Toolbar.addSearchCommand() 中的效果?
- ios - SwiftUI:如何仅将修饰符应用于特定元素?
- vue.js - Nuxt.js - 屏幕变黑