2014-10-05 39 views
0

我正在嘗試創建一個Node.js應用程序,它將連接到MongoDb數據庫。我正在使用TypeScript。但下面的代碼行很麻煩。TypeScript編譯器找不到我先前聲明的變量

/// <reference path="mongodb.d.ts" /> 
var mongo = require('mongodb'); 
class DefaultModel<T> { 
    private db : mongo.Db; 
} 

TSC報告:TS2095: Could not find symbol 'mongo'.。我不明白爲什麼它不能在課堂以外宣佈它。你能幫我弄清楚爲什麼?

模塊被宣佈mongodb.d.ts爲declare module "mongodb" { /* Omitted */ }

回答

0

TS2095:找不到符號 '蒙戈'。

您試圖在 delaration空間來使用它::mongo.Db;。而你只需要它在變量聲明空間中聲明:var mongo

修復:使用importvar

/// <reference path="mongodb.d.ts" /> 
import mongo = require('mongodb'); 
+0

這是有道理的,但如果我在代替使用進口我得到這個:'TS5037:除非提供'--module'標誌,否則不能編譯外部模塊。' – 2014-10-06 14:21:47

+0

沒想到,我發現我錯過了編譯器的--module「commonjs」參數。謝謝 :) – 2014-10-06 14:30:05

相關問題