2014-10-04 40 views
3

我有一個項目,我正在使用打字稿並希望使用打字稿定義文件來與庫(如貓鼬)進行接口。我已經通過如何使用.d.ts文件

tsd query mongoose --action install 
tsd query node --action install 

安裝了相應的.d.ts文件我想通過以下代碼導入貓鼬

///<reference path="../typings/mongoose/mongoose.d.ts"> 
import mongoose = require("mongoose"); 

class MongooseUser 
{ 
    constructor() 
    { 

    } 

    useMongoose():any { 
     return mongoose.Collection; 
    } 
} 

很顯然,我並不想,此刻在這裏做什麼,但是當我transpile這個我收到以下錯誤

Unable to resolve external module '"mongoose"'. 
Module cannot be aliased to a non-module type. 
error TS2095: Could not find symbol 'mongoose'. 

無論是尋找如何使用這些東西(其中黯然文檔是在提供可怕),或者一些指針,一個完整的例子。謝謝。

+0

您是否使用Visual Studio? – Fenton 2014-10-04 07:02:25

+0

不,我正在使用PHPStorm – ed209 2014-10-04 13:20:26

+0

我對這些有點缺乏經驗,但解決方案是簡單地爲.d.ts文件提供正確的路徑。當時我不明白,它們只是允許你鍵入對象的接口,並且與實際的貓鼬文件無關。 – ed209 2015-06-02 14:37:27

回答

6

您的參考標籤不正確。您忘記關閉它/>。修正:

///<reference path="../typings/mongoose/mongoose.d.ts"/> 

這將幫助你避免這樣的錯誤:https://github.com/TypeStrong/grunt-ts#references

+0

我使用gulp而不是grunt,但是這並沒有解決問題。 – ed209 2014-10-05 14:46:14

2

的d.ts是你的定義文件,它已無關,與貓鼬包是僅適用於智能感知,你肯定是貓鼬安裝在您的node_module中,請檢查並在本地以及全局安裝

相關問題