Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 如何在d.ts文件中声明的接口中使用TypeScript环境声明接口_Node.js_Typescript - Fatal编程技术网

Node.js 如何在d.ts文件中声明的接口中使用TypeScript环境声明接口

Node.js 如何在d.ts文件中声明的接口中使用TypeScript环境声明接口,node.js,typescript,Node.js,Typescript,我想在.ts文件中创建一个助手,如: class ResponseHelper implements IResponseHelper {...} IResponseHelper是一个简单的.d.ts文件,具有 import * as mongoose from 'mongoose'; import * as express from 'express' interface IResponseHelper { toStandartResponse(response: mongoose.P

我想在.ts文件中创建一个助手,如:

class ResponseHelper implements IResponseHelper {...}
IResponseHelper是一个简单的.d.ts文件,具有

import * as mongoose from 'mongoose';
import * as express from 'express'
interface IResponseHelper {
    toStandartResponse(response: mongoose.Promise<any>, res: express.Response): mongoose.Promise<any>;
}
import*作为“猫鼬”中的猫鼬;
从“express”导入*作为express
接口IResponseHelper{
toStandartResponse(响应:mongoose.Promise,res:express.response):mongoose.Promise;
}
正如您所看到的,toStandartResponse中的参数来自于环境声明的mongoose。所以这很好,但如果我这样做了,我就不能使用“实现”,比如类ResponseHelper implements IResponseHelper,因为我得到了错误“在外部模块ResponseHelper中找不到符号IResponseHelper”,换句话说,编译器看不到d.ts文件。 如果我从d.ts中删除导入语句。文件everuthing还可以,但我无法指定响应类型


有什么方法可以同时使用它吗?

我相信,当您在中使用
导入时,会使文件成为一个模块,因此您必须
导出
您想要的任何成员:

export interface IResponseHelper { }
现在,您可以从其他文件导入它:

import {IResponseHelper} from "./IResponseHelper";

class ResponseHelper implements IResponseHelper { }

我相信当您在中使用
import
时,会使文件成为一个模块,因此您必须
export
任何您想要可见的成员:

export interface IResponseHelper { }
现在,您可以从其他文件导入它:

import {IResponseHelper} from "./IResponseHelper";

class ResponseHelper implements IResponseHelper { }

我会试试这个,但这很奇怪,因为.d.ts是定义文件,没有生成代码。那么在这种情况下javascript的输出是什么呢。它应该会导致错误,模块不存在或smthng。我将尝试此操作,但它很奇怪,因为.d.ts是定义文件,并且没有生成的代码。那么在这种情况下javascript的输出是什么呢。这将导致模块不存在或出现错误。