我有PHP和JavaScript背景,并且从未使用完全手工使用nodejs或angular js,只是对这些js的基本了解。
我开始学习角度js 2但是找到第一个例子很困难。
节点v 5.6.0和ubuntu 14.04上的npm版本3.7.2
我关注this article进行了更改 - tsd
已被弃用,因此使用了typings
而不是tsd
。下面是我的文件夹结构。
但是当我在终端上运行gulp buildServer
时会出现以下错误
我可能会做非常基本的错误,请帮助我解决这个问题,如果需要更多信息,请告诉我。
server.ts 代码
import express = require('express');
import path = require('path');
var port: number = process.env.PORT || 3000;
var app = express();
app.use('/app', express.static(path.resolve(__dirname, 'app')));
app.use('/libs', express.static(path.resolve(__dirname, 'libs')));
var renderIndex = (req: express.Request, res: express.Response) => {
res.sendFile(path.resolve(__dirname, 'index.html'));
}
app.get('/*', renderIndex);
var server = app.listen(port, function() {
var host = server.address().address;
var port = server.address().port;
console.log('This express app is listening on port:' + port);
});
答案 0 :(得分:1)
它显示cannot find module 'path'
,然后再显示http
,依此类推。我的经验中出现重复标识符的错误也是由于使用旧版本的npm
,因为npm v3.0
它会尝试生成all dependencies flat。
我尝试rm -rf node_modules
,安装最新稳定的node
和npm
,再次运行npm install
,然后尝试运行gulp
。或者至少检查一下npm
和node
版本。
答案 1 :(得分:1)
您需要获取node和server-static的类型定义。
typings install node --ambient --save
typings install serve-static --ambient --save
typings install mime --ambient --save
您需要mime
,因为serve-static
依赖它。