gpt4 book ai didi

Angular 6/在 tsconfig.lib.json 中声明库的路径

转载 作者:太空狗 更新时间:2023-10-29 18:36:32 26 4
gpt4 key购买 nike

我正在尝试为 Angular 6 库配置路径(我已经为之前的 Angular 项目成功配置了路径)

这是在 tsconfig.json 文件中为我以前的应用程序工作的内容:

"compilerOptions": {
[...]
"baseUrl": "src",
"paths": {
"@class/*": [ "app/class/*" ],
"@services/*": [ "app/services/*" ],
"@views/*": [ "app/views/*" ]
}
}

然后像这样使用它:

Import { Item } from '@class/item';

在我的新应用中,我在 tsconfig.**lib**.json 文件中尝试相同的方式:

"compilerOptions": {
[...]
"baseUrl": "src",
"paths": {
"@class/*": [ "lib/class/*" ],
"@services/*": [ "lib/services/*" ],
"@views/*": [ "lib/views/*" ]
}
}

我试过像这样在我的库的组件中导入一个类,但它不起作用(VSCode 找不到该文件):

Import { Item } from '@class/item';

请注意,主项目中的 import 语句正在运行:

Import { Item } from 'myLibrary';

知道我做的不好吗?

感谢您的帮助。

最佳答案

这是我上面的评论,如果你看到这是一个正确的答案。

Angular会使用tsconfig.json文件,在**architect --> build --> options中的angular.json文件中配置--> tsconfig**。而 VS Code 使用位于工作区底部的 tsconfig.json 文件。您需要在两个配置中添加路径以使它们都正常工作,或者更改项目以使用 angular.json 文件中的基本 tsconfig.json 文件.

tsconfig.json 文件有一个扩展属性,它将以另一个文件为基础并覆盖在 tsconfig.lib.json 文件中声明的所有内容。因此,如果您在 tsconfig.lib.json 文件中声明了路径,则 tsconfig.json 文件中不再需要这些路径。

编辑 2019 年 7 月 29 日tsconfig.json

"baseUrl": "src",
"paths": {
"@ProjectName1/*": ["../projects/ProjectName1/src/app/modules/*"],
"@Projectname2/*": ["../projects/Projectname2/src/app/modules/*"],
"@environment/*": ["environments/*"],
"project-core": ["../dist/project/project-core"],
"project-core/*": ["../dist/project/project-core/*"]
}

目前我没有在 tsconfig.app.json 中声明路径,因为它与 tsconfig.json 中的路径相同。所以这与我之前的回答不同,因为我只在 tsconfig.json 中有路径。

关于Angular 6/在 tsconfig.lib.json 中声明库的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52147201/

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