gpt4 book ai didi

typescript 和 babel-plugin-module-resolver : VS Code doesn't resolve imports

转载 作者:搜寻专家 更新时间:2023-10-30 21:19:05 26 4
gpt4 key购买 nike

我目前正在学习使用 typescript ,但我对 VS Code 有疑问。我已经使用 Babel 7 和几个插件建立了一个基本项目。我使用命令 npm run dev 运行脚本。这是我的依赖项的完整列表:

//package.json
"scripts": {
"dev": "nodemon src/index.ts --extensions \".ts\" --exec babel-node"
},
"devDependencies": {
"@babel/cli": "^7.1.2",
"@babel/core": "^7.1.2",
"@babel/helper-plugin-utils": "^7.0.0",
"@babel/node": "^7.0.0",
"@babel/plugin-proposal-async-generator-functions": "^7.1.0",
"@babel/plugin-proposal-class-properties": "^7.1.0",
"@babel/plugin-proposal-decorators": "^7.1.2",
"@babel/plugin-proposal-optional-catch-binding": "^7.0.0",
"@babel/plugin-proposal-optional-chaining": "^7.0.0",
"@babel/plugin-transform-modules-commonjs": "^7.1.0",
"@babel/plugin-transform-typescript": "^7.1.0",
"babel-plugin-module-resolver": "^3.1.1"
}

以下是我的 2 个 .ts 文件的内容。

// src/script.ts
export default function (arg:string): string {
return arg;
};

// src/index.ts
import Fn from "@/script";
console.log( Fn("Hello World") );

这是我的 Babel 配置文件:

//babel.config.js
module.exports = {
"plugins": [
["@babel/plugin-transform-typescript"],
["@babel/plugin-transform-modules-commonjs"],
["@babel/plugin-proposal-async-generator-functions"],
["@babel/plugin-proposal-optional-catch-binding"],
["@babel/plugin-proposal-optional-chaining"],
["@babel/plugin-proposal-decorators", { "legacy": true }],
["@babel/plugin-proposal-class-properties", { "loose": true }],//must be after @babel/plugin-proposal-decorators

["module-resolver", {
//"root": ["./src", "./test"],
"alias": {
//"__root": ".",
"@": "./src",
//"#": "./src/assets",
//"_": "./src/assets/_",
//"!": "./static"
},
}]
]
};

还有我的 Typescript 配置文件:

// tsconfig.json
{
"compilerOptions": {
"baseUrl": ".",
"paths": {
"@": ["./src"]
}
}
}

当我运行这段代码时,它看起来不错并且我在我的控制台中看到了“Hello World”。但是,VS Code 似乎不理解路径“@/script”。它带有红色下划线和工具提示

[ts] Cannot find module '@/script'.

如果我不使用 babel-plugin-module-resolver 插件,而是使用路径“./script”,我就不会遇到这个问题。有办法解决这个问题吗?

谢谢!

最佳答案

tsconfig.jsonpaths 的语法错误。应该是:

"paths": {
"@/*": ["./src/*"]
}

请参阅 this section of the documentation 中的第二个示例.

关于 typescript 和 babel-plugin-module-resolver : VS Code doesn't resolve imports,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53037784/

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