【问题标题】:How to augment @types/mocha? [duplicate]如何增加@types/mocha? [复制]
【发布时间】:2020-09-29 01:05:16
【问题描述】:

我尝试以无数种不同的方式应用 Aluan 的 answer,但都没有奏效,也就是说,没有一个为我增强的类型提供甜蜜的自动完成功能:

augmentations.d.ts

import { Foo } from './foo';

declare module "mocha" {
  namespace Mocha {
    export interface Context {
      foo: Foo;
    }
  }
}

我确保augmentations.d.ts 文件是tsconfig.jsoninclude 属性中glob 模式的一部分,但是当我在测试钩子中键入this 时,我在VSCode 中看到的就是这样:

特别提到 this 作为 it 钩子的参数也不起作用:

it("should do something", async function (this: Mocha.Context) {
 ...
});

【问题讨论】:

  • 抱歉,我的回答有误。
  • 可能关闭这个
  • 我自己回答了这个问题。我认为保持两者开放是有帮助的,因为问题有些不同,许多其他人可能也会遇到它们。
  • 问题似乎完全一样。关闭的原因是,这正是为了让遇到它的其他人不必在基本相同的问题和他们的 cmets 之间跳来跳去。重复的问题使使用变得更难,而不是更容易
  • 如果你想帮助那些可能犯我在回答中犯过同样错误的人,那可能是值得的,除非你没有解释为什么我的回答不正确,什么时候正确,等等。

标签: typescript types mocha.js module-augmentation


【解决方案1】:

解决方案最终由 Aluan 提供。他的原始答案中有一个小错误。

只需删除命名空间:

import { Foo } from './foo';

declare module "mocha" {
  export interface Context {
    foo: Foo;
  }
}

【讨论】:

    猜你喜欢
    • 2020-05-15
    • 2016-04-17
    • 2011-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-27
    • 2021-06-07
    • 2010-10-14
    相关资源
    最近更新 更多