我对Visual Studio Code很陌生,已经从Visual Studio 2015横向移动。找不到模块'express';找不到名称'process';等等
我正在使用webpack在VSC中编写我的第一个nodejs/Angular 2失败。 Express-Generator提供的示例应用程序可以起到一定的作用,但现在我正在继续编写自己的代码,主要是使用TypeScript。
我有这样的代码在app.ts:
import * as express from 'express';
import * as http from 'http';
import * as path from 'path';
var controllers = require('./controllers');
var app = express();
app.set('port', process.env.PORT || 80);
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'vash');
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.json());
app.use(express.urlencoded());
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(path.join(__dirname, 'public')));
// map the routes
controllers.init(app);
// development only
if ('development' === app.get('env')) {
app.use(express.errorHandler());
}
// set up server
http.createServer(app).listen(app.get('port'),() => {
console.log(`Express server listening on port ${app.get('port') }`);
});
webpack.config.js:
var webpack = require('webpack'),
path = require('path');
var app = __dirname;
module.exports = {
context: app,
entry: {
app: ['webpack/hot/dev-server', './app.ts']
},
resolve: {
extensions: ['', '.webpack.js', '.web.js', '.ts', '.tsx', '.js']
},
output: {
path: app,
filename: "bundle.js"
},
module: {
loaders: [
{ test: /\.css$/, loader: "style!css" },
{ test: /\.ts(x?)$/, loader: 'babel-loader!ts-loader' }
]
},
plugins: [
new webpack.HotModuleReplacementPlugin()
]
};
tsconfig.json:
{
"compilerOptions": {
"target": "ES6"
},
"files": [
"app.ts"
]
}
我有一些问题由VSC提出。在我的.ts的第一行,“无法找到模块'express'。”现在我已经运行了“npm intall express -g”,甚至是“npm install express”,所以我不知道它为什么在抱怨。按预期方式,node_module文件夹包含一个快速文件夹。
此外,我的“过程”产生令人愉快的“无法找到名称”过程“。”,就像我的“__dirname”一样。
所有这些让我觉得nodejs配置不正确。
任何人都可以帮助解决这些问题吗?我会在别处寻找答案,但我不知道要去哪里看,也不知道该怎么办!
您是否安装了类型定义? – Antiga
nodejs的类型定义?是。 – serlingpa
和Express?... – Antiga