问题标签 [declaration-files]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
46 浏览

typescript - TypeScript 声明文件找不到错误

消息.js

消息.d.ts

声明文件.ts

包含找不到错误。

如何解决错误?

0 投票
1 回答
460 浏览

typescript - 如何在声明文件(*.d.ts)中导入第三方模块?

我创建了类型声明文件(index.d.ts),我需要使用第三方包('moment.js' in node_modules)的对象作为类型。

我做了一个类似上面的代码,但它不起作用。如何在*.d.ts文件中导入第三方模块?

0 投票
1 回答
932 浏览

javascript - .d.ts 文件中的意外标识符

我正在使用带有以下构建说明的打字稿。

我的一个.ts文件导入了猫鼬。运行时npm start出现以下错误。在.d.ts文件中

注意“@types/mongoose”和“mongoose”已经是依赖项了。

collection1.model.d.ts 的内容如下。这是由tsc --emitDeclarationOnly

tsconfig.json

}

.babelrc

}

0 投票
1 回答
940 浏览

typescript - 在 TypeScript 中增强全局

如何添加fetch到 TypeScript 中的全局对象,这样我就不必这样做了:

我在一个文件中试过这个./types/index.d.ts

并尝试通过将其包含在 tsconfig.json 中来引用它。

0 投票
0 回答
52 浏览

typescript - 如何在 ts 项目中提供手工编写的声明文件?

我有这些文件:

  • 脚.ts
  • foo.d.ts(手写)
  • bar.ts

我想使用 TypeScript 生成以下输出

  • foo.js
  • foo.d.ts (和我亲手创作的一样)
  • bar.ts
  • 酒吧.d.ts

在这种情况下,TypeScript 会忽略我手工编写的 foo.d.ts,而只是从 foo.ts 生成一个 .d.ts。当有相应的 .ts 时,如何让 TS 通过手工编写的 .d.ts 文件?

0 投票
1 回答
58 浏览

typescript - 在打字稿中使用声明文件而不是源代码有什么好处吗?

使用 typescript 创建和发布库时,有 2 个选项:

  1. 与捆绑的 javascript 文件一起生成声明文件d.ts,然后使用以下命令package.json指向它:

    “类型”:“./dist/mylib.d.ts”

  2. 不要生成声明文件,直接指向package.jsonwitt 中的源代码:

    “类型”:“./src/index.ts”

每个人的来历是什么?

0 投票
1 回答
208 浏览

angular - TypeScript 声明文件在其文件夹位于 typeRoots 时未读取

在一个打字稿(Angular 9)项目中,我试图导入一个私有 JS 库。

当我导入它时,import { myMethod } from 'my-private-repo/dist/util';我收到以下错误:

我试图解决在文件夹中添加声明文件的问题,该typings文件夹具有以下内容:declare module "my-private-repo/dist/util";,或者即使使用declare module "*";但错误没有改变,就像我的声明文件在我更改我的 ts 配置以包含它时根本没有被读取:

我不明白为什么我的声明文件无法识别。

你有什么主意吗 ?

谢谢 :)

0 投票
1 回答
35 浏览

typescript - 环境打字稿定义未捆绑在库中

我正在使用 TSDX 工具来构建一个 react-typescript 库。我的@types/目录中导出了许多类型,当我在应用程序中毫无问题地使用它们时,编译器清楚地选择了这些类型。

但是,在我的构建过程中,它们并没有被复制到我的输出包中,这让我感到惊讶,因为它们是通过代码引用的(确实被正确地捆绑了)。

0 投票
0 回答
109 浏览

typescript - 为什么非导出类型从 TS 声明文件中隐式导出,导入但没有导出?这是一个错误吗?

为什么非导出类型从 TS 声明文件中隐式导出,导入但没有导出?这是一个错误吗?如果不是,这种行为称为什么,是否记录在任何地方?

背景:

我知道在没有导入或导出的 TS 声明文件中,每个声明都变成了环境,并且在没有导入的情况下可用。

在带有 ECMAScript 模块导出的声明文件中,文件中的类型只有在显式导出时才可从其他文件中使用。

TS 声明文件似乎有第三种行为,它至少有一个导入或导出语句,但没有导出声明:此类文件中的任何变量/函数/接口等声明都可以从其他文件中导入,即使它们不是t 显式导出。

例子:

奇怪的.d.ts(从自我进口)

进口商.d.ts

澄清

请注意,如果没有导出声明,则未导出的声明只会从作为模块的 .d.ts 文件中泄漏。出口声明如下所示:

TS 将这种导出与带有导出修饰符的语句区别对待:

使用前一种语法可防止从其他文件导入未导出的声明。

0 投票
0 回答
16 浏览

typescript - .d.ts 文件中的错误何时会影响消费者?

如果 TS 文件使用包含错误的 .d.ts 文件,则有时消费者会因为这些错误而无法构建。其他时候,TS 默默地将有问题的类型转换为any.

TS 选择报告这些错误时的规则是什么?我没有找到任何模式。