为什么我不能为成员添加导入的声明?

时间:2017-03-02 00:13:09

标签: typescript

我试图在导入的声明中添加构造函数。根据{{​​3}},这应该有效。 (第Adding using an interface章)

这是我的代码:

import { ObjectID } from 'mongodb';

interface ObjectID {
  new(b: Buffer): ObjectID;
}

我收到以下错误消息:

  

导入声明与第2行第10行的##; ObjectID'的本地声明冲突

作为一种解决方法,我重命名了界面并对任何一个进行了类型断言,然后对我的界面进行了类型断言。这很好,因为我只需要在一个地方,但我仍然想知道它为什么不起作用。

1 个答案:

答案 0 :(得分:0)

嗯,您正在导入在本地声明,因此错误是准确的。对于导入的代码,您可能应该创建一个declaration

但在这种情况下,您似乎不需要为mongodb创建声明。 Definition files already exist。你可以做到

npm install @types/mongodb --save-dev

因此,您将获得为您宣布的一切。 Here's the constructor in question