找不到模块“快递”;找不到名称“进程”;等等

Posted

技术标签:

【中文标题】找不到模块“快递”;找不到名称“进程”;等等【英文标题】:Cannot find module 'express'; Cannot find name 'process'; and so on 【发布时间】:2016-03-13 14:49:31 【问题描述】:

我是 Visual Studio Code 的新手,从 Visual Studio 2015 开始横向迁移。

我正在使用 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 文件夹包含预期的 express 文件夹。

此外,我的“进程”正在产生令人愉快的结果:“找不到名称 '进程'。”,我的“__dirname”也是如此。

这一切都让我觉得nodejs配置不正确。

谁能帮助解决这些问题?我会在别处寻找答案,但我不知道在哪里寻找或寻找什么!

【问题讨论】:

你安装了类型定义吗? nodejs 的类型定义?是的。 【参考方案1】:

您可能没有显示所有代码,但我在任何地方都看不到:

var express = require('express')

【讨论】:

import * as express from 'express';我看到了吗? 对不起,我不熟悉 TypeScript,也不知道这个约定。我现在已经查过了。我自己刚开始学习 nodejs,所以建议按照我的教程所述的方式。 没问题。你应该知道;但是,这不是 TypeScript 语法。这是新的 javascript 语法。具体来说,这是 ES2015 模块语法。【参考方案2】:

找到了!失踪了:

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

简单。

【讨论】:

如果它有帮助,您现在可以将该文件包含在 `tsconfig.json 中,如果它更容易的话。

以上是关于找不到模块“快递”;找不到名称“进程”;等等的主要内容,如果未能解决你的问题,请参考以下文章

TypeScript - 找不到名称“进程”

易语言:错误(36): 找不到指定的对象成员命令名称“打开”。

找不到名称“模块”

运行 NPM 子进程导致“找不到模块”

易语言的错误怎么办错误(36): 找不到指定的对象成员命令名称“创建内存”

易语言问题 错误(36): 找不到指定的对象成员命令名称“取文本长度”。