如何导入nano(couchdb) - typescript

时间:2017-08-22 09:52:26

标签: typescript couchdb node-modules couchdb-nano

我在节点应用程序中导入和使用nano时遇到问题。

js方式(来自doc)是:

var nano = require('nano')('http://localhost:5984');

我如何使用打字稿?

我试过

import * as Nano from "nano";
let nano = new Nano('http://localhost:5984');

然后我得到:Nano不是一个对象。

3 个答案:

答案 0 :(得分:3)

通过安装@ types / nano,我们可以看看:

node_modules/@types/nano/index.d.ts

我们在哪里看到这些行:

declare function nano(config: nano.Configuration | string):
 nano.ServerScope | nano.DocumentScope;

含义Nano是一个函数而不是一个对象,所以答案是:

import * as Nano from "nano";
let nano = Nano('http://localhost:5984');

答案 1 :(得分:1)

你必须像下面那样强调:

import * as Nano from "nano";

let nano: Nano.ServerScope = <Nano.ServerScope>Nano('http://localhost:5984');
let db = nano.use(database);

答案 2 :(得分:0)

由于7.x nano版本具有针对IDE的内置TS类型信息,因此无需导入其他类型。

以下内容应足够:

import Nano from "nano";
let n = Nano('localhost:5984');