我有两个项目,一个API和一个客户端(angular)项目。在我的angular项目中,我有以下tsconfig.json
:
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/out-tsc",
"forceConsistentCasingInFileNames": true,
"strict": true,
"noImplicitOverride": true,
"noPropertyAccessFromIndexSignature": true,
"noImplicitReturns": true,
"noFallthroughCasesInSwitch": true,
"sourceMap": true,
"declaration": false,
"downlevelIteration": true,
"experimentalDecorators": true,
"moduleResolution": "node",
"importHelpers": true,
"target": "ES2022",
"module": "ES2022",
"useDefineForClassFields": false,
"lib": ["ES2022", "dom"],
"paths": { /* <-- note this bit */
"@shared/*": ["../api/src/*"]
}
},
"angularCompilerOptions": {
"enableI18nLegacyMessageIdFormat": false,
"strictInjectionParameters": true,
"strictInputAccessModifiers": true,
"strictTemplates": true
}
}
正如你所看到的,我添加了paths
对象,以便从"../api/src/*"
(API项目)导入文件。这是工作正常,只有我有一个文件在"../api/src/schema/request.d.ts"
:
export namespace Request {
export interface GetPlaylistTracks {
Params: {
playlistId: string;
};
ResBody: SpotifyApi.PagingObject<any> | undefined;
ReqBody: {};
ReqQuery: {
offset: string;
limit: string;
};
}
}
我想把它导入到这个Angular 项目中
import { Request } from '@shared/schema/request';
获取错误
Error: ../api/src/schema/request.d.ts:26:14 - error TS2833: Cannot find namespace 'SpotifyApi'. Did you mean 'Spotify'?
26 ResBody: SpotifyApi.PagingObject<any> | undefined;
命名空间SpotifyApi
来自@types/spotify-api
(在我的API项目中运行良好)。在我的package.json
中的两个项目中,我有
{
...
"devDependencies": {
...
"@types/spotify-api": "^0.0.22"
}
}
2条答案
按热度按时间ulmd4ohb1#
你是否尝试添加“@types/spotify-api”,而不是devDependencies:“^0.0.22”到依赖项。
开发和测试。
既然你在模型中引用SpotifyApi.PagingObjec。您需要将其添加到依赖项中。
crcmnpdw2#
我可以通过增加
request.d.ts
文件。我还是不知道为什么有必要这么做。顺便说一句,我在不使用paths
属性时遇到了同样的问题,即。SpotifyApi
不能在任何Angular 项目中工作,只能在我的后端项目中工作。VS Code没有显示任何错误,它们只是出现在终端/Web客户端中。