我剛剛使用typescript啓動了一個新的nodejs項目。我安裝了Typings(https://github.com/typings/typings),並使用它來爲節點v4.x安裝參考文件並且表示v4.x.Typescript:「找不到有效的類型的模塊」
我的節點版本是v4.2.6 我的打字稿的版本是v1.7.5
我的項目目錄由此奠定了:
package.json
tsconfig.json
typings.json
src/
app.ts
typings/
main.d.ts
main/ambient/node/node.d.ts
main/ambient/express/express.d.ts
分型的內容/ main.d.ts如如下:
/// <reference path="main/ambient/express/express.d.ts" />
/// <reference path="main/ambient/node/node.d.ts" />
tsconfig.json的內容如下:
{
"compilerOptions": {
"target": "es6",
"module": "commonjs"
}
}
內容斷typings.json如下:是
{
"dependencies": {},
"devDependencies": {},
"ambientDependencies": {
"express": "github:DefinitelyTyped/DefinitelyTyped/express/express.d.ts#dd4626a4e23ce8d6d175e0fe8244a99771c8c3f2",
"node": "github:DefinitelyTyped/DefinitelyTyped/node/node.d.ts#1c56e368e17bb28ca57577250624ca5bd561aa81"
}
}
SRC/app.ts的內容如下:
'use strict';
///<reference path="../typings/main.d.ts"/>
import * as express from "express";
這是非常簡單的,並且會導致一個基本應用。然而,當我嘗試編譯此我得到的錯誤error TS2307: Cannot find module 'express'.
我試圖重新安排分型的文件,改變了參考路徑標籤的相對路徑,使用tsconfig.json的files
現場指示參考的路徑,而不是使用文件中的內聯標記,都無濟於事。我也試着直接在命令行上使用gulp-typescript
,gulp-tsc
和tsc
進行編譯。
我得到類似的錯誤,當我嘗試使用建立的NodeJS式模塊,如crypto
,http
,fs
等
這些提法似乎有效 - 我缺少什麼?
這一切都是有效的。分享這個項目,我會爲你尋找 – basarat
甜蜜的感謝。 https://github.com/jereynolds/ts-test – aaaarrgh
我只是多了一些,我注意到引用路徑註釋仍然存在於.js輸出文件中。導入語句確實被正確解析爲一個標準的'var express = require('express');'line – aaaarrgh