2017-07-05 22 views
0

私はMongoose型をTypeScript定義ファイルで参照しようとしています。現在、私はちょうどTypeScript定義ファイルで外部モジュールのタイプを使用するにはどうすればよいですか?

import mongoose from 'mongoose' 

を行うことができますように、私は定期的に.tsファイルを使用していますが、私はそれが適切な定義ファイル(.d.ts)になりたいです。問題は、importが定義ファイルに使用できないということです。だから私はこの

/// <reference types="mongoose" /> 
interface doc extends mongoose {} 
interface doc extends mongoose.Document {} 

/// <reference path="../../node_modules/@types/mongoose/index.d.ts" /> 
interface doc extends mongoose { } 
interface doc extends mongoose.Document {} 

を試してみたが、それらのどちらも仕事 - に関係なく、私はmongooseまたはMongooseを使用するかどうかの。 VSコードはちょうどcannot find name 'mongoose'またはcannot find namespace 'mongoose'と表示されます。

私はここに迷っています。定義ファイルで外部モジュールの定義を使用するにはどうすればよいですか?

答えて

0

私は、この問題の原因となっている可能性がありますmongooseタイピングがデフォルトのエクスポートを持っているとは思わない。あなたのd.tsファイルにimport * as mongoose from 'mongoose'またはimport mongoose = require('mongoose')を追加してみてください

+0

私の質問を参照してください、インポートは定義ファイルでは許可されていません。 – Aron

+0

私は彼らがそう信じています。たとえば、外部角度d.tsファイルのいくつかを見てみましょう:https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/angular-breadcrumb/index.d.ts –

関連する問題