gpt4 book ai didi

typescript - 如何在 TypeScript 声明中使用 Webpack 别名

转载 作者:行者123 更新时间:2023-12-04 11:27:58 27 4
gpt4 key购买 nike

我正在使用 TypeScript 编写 NPM 包,但找不到在 TypeScript 声明中转换 Webpack 别名的方法。

webpack.config.js

{
// ...more Webpack configurations
resolve: {
extensions: [".ts", ".js"],
alias: {
"@": resolvePath("src")
}
}

tsconfig.json
{
"compilerOptions": {
// More options
"paths": {
"@/*": ["src/*"]
}
}
}

我正在使用 babel-loader@babel/preset-typescript但它不输出声明文件。
tsc --emitDeclarationOnly发出声明文件,但它不会替换 @/用正确的路径。与 ts-loader 相同.

我可以通过 moduleNameMapper 在 Jest 中使用它.如果我能让它工作构建声明文件,我就不再需要写类似 ../../../../model 的东西了。 .

我在网上找到的大多数答案都是关于编译 JavaScript 文件的,我对此没有问题。任何帮助将不胜感激。

最佳答案

我终于找到了解决办法。您需要 ttypescripttypescript-transform-paths .您将以下内容添加到 compilerOptionstsconfig.json

"plugins": [
{ "transform": "typescript-transform-paths", "afterDeclarations": true }
]

并运行
ttsc --emitDeclarationOnly

我写了一个 article在这一点上。

关于typescript - 如何在 TypeScript 声明中使用 Webpack 别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55700593/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com