gpt4 book ai didi

javascript - 错误 TS2307 : Cannot find module (external, 私有(private)模块)

转载 作者:太空宇宙 更新时间:2023-11-04 02:10:28 28 4
gpt4 key购买 nike

我读过类似的问题,包括 tsc throws `TS2307: Cannot find module` for a local file .

我有一个私有(private)外部模块(在本地 git 服务器上),我尝试将其包含到我的应用程序中 - 这有效。

  • phpStorm可以完美解析类!
  • 应用抛出错误 TS2307,但运行完美!

我想知道为什么转译器会抛出此错误,尽管一切看起来都很好,并且我需要消除此错误才能实现稳定的部署。

模块 tsconfig.json 如下所示:

{
"compilerOptions": {
"module": "commonjs",
"moduleResolution": "node",
"target": "ES6",
"typeRoots": [
"node_modules/@types"
],
"sourceMap": false,
"noImplicitAny": false,
"declaration": true,
"noResolve": false
},
"version": "2.0.0"
}

我尝试了上述几种组合,但没有成功。

我在模块中有一个Main.ts,例如

export {default as Logger}  from "./Logger";
export {ILogger as ILogger} from './ILogger';

类和接口(interface)在哪里

export interface ILogger { }
export default class Logger implements ILogger { }

在我使用的应用程序中:

import {Logger, ILogger} from "logging";

当我尝试转译应用程序而不是模块时,会发生错误。同样,通过 Node 运行应用程序以及在 phpStorm 中编码时一切正常,但在转译时我得到:

src/Main.ts(9,39): error TS2307: Cannot find module 'logging'.

更新:

看起来像是 tsc 中的错误:https://github.com/Microsoft/TypeScript/issues/14332

最佳答案

在我们的项目中,错误已通过在包含键中包含 typescript 文件和定义来解决,如下所示

  "include": ["global.d.ts", "./app/**/*.tsx", "./app/**/*.ts"],

app 包含 typescript 文件,global.d.ts 包含本地包的声明,如下

declare module 'uicomponents-react-native';
declare module '@styles';
declare module '@styles/*';

declare module '@common';

declare module '@constants';
declare module '@constants/*';

declare module '@utils/*';
declare module '@utils';

declare module '@helper/*';
declare module '@helper';

关于javascript - 错误 TS2307 : Cannot find module (external, 私有(private)模块),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42481149/

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