使用TypeScript和types的快车服务器
我试图build立一个快速的Web服务器使用TypeScript,但每次我试图transpile到JS得到这个错误
error TS1008: Unexpected token; 'module, class, interface, enum, import or statement' expected.
我是一个新手,这就是我所做的(使用WebStorm)。 我使用types来安装下面的expression环境依赖关系,即,
typings install --ambient --save express
其中创build了以下typings.json文件
{ "ambientDependencies": { "express": "registry:dt/express#4.0.0+20160317120654", } }
查看index.d.ts
typings\main\ambient\express\
中的index.d.ts
文件,WebStorm抱怨找不到模块serve-static
, express-serve-static-core
和mime
。 所以我安装了那些节点,这样typings.json
就变成了
{ "ambientDependencies": { "express": "registry:dt/express#4.0.0+20160317120654", "express-serve-static-core": "registry:dt/express-serve-static-core#0.0.0+20160322035842", "mime": "registry:dt/mime#0.0.0+20160316155526", "node": "registry:dt/node#4.0.0+20160509154515", "serve-static": "registry:dt/serve-static#0.0.0+20160501131543" } }
然后我添加了下面的tsconfig.json
文件
{ "compilerOptions": { "target": "es5", "module": "commonjs", "moduleResolution": "node", "sourceMap": true, "emitDecoratorMetadata": true, "experimentalDecorators": true, "removeComments": false, "noImplicitAny": false }, "exclude": [ "node_modules", "typings/main", "typings/main.d.ts" ], "files": [ "server.ts" ] }
我从npm安装了express模块,这样我的package.json
看起来就像
{ "name": "using-typings", "version": "1.0.0", "description": "", "main": "index.js", "dependencies": { "express": "^4.13.4", "mime": "^1.3.4" }, "devDependencies": {}, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "keywords": [], "author": "", "license": "ISC" }
并创buildserver.ts
如下
/** Created by James on 5/12/2016. */ /// <reference path="typings/main.d.ts"/> import express = require('express'); var app = express();
现在试图transpile这个使用tsc server.ts
我得到以下错误
\using-typings>tsc server.ts \using-typings\server.ts(4,1): error TS1008: Unexpected token; 'module, class, interface, enum, import or statement' expected. \using-typings\server.ts(4,8): error TS1008: Unexpected token; 'module, class, interface, enum, import or statement' expected. \using-typings\server.ts(4,13): error TS1005: ';' expected. \using-typings\server.ts(4,21): error TS1005: ';' expected. \using-typings\server.ts(4,26): error TS1005: ';' expected.
我明显失去了一些东西,但无法弄清楚。 有什么build议吗?
我还没有意识到现在已经安装了用于Visual Studio的Microsoft SDK的Typescript。 从系统环境variables中删除C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\
使我能够使用通过节点安装的更高版本的typescript编译器。