javascript - NodeJS - TypeError : app. listen 不是函数

标签 javascript node.js nvm

我知道这个问题已经存在,但他们的回答并没有解决我的问题。

错误是“TypeError: app.listen is not a function”;

我的完整代码如下,在此先感谢。 (PS,我没有在同一个端口上运行任何东西)

var io = require('socket.io')(app);
var fs = require('fs');
var serialPort = require("serialport");

var app = require('http');

app.createServer(function (req, res) {
    fs.readFile(__dirname + '/index.html',
        function (err, data) {
            res.writeHead(200);
            res.end(data);
        });
}).listen(1337, '127.0.0.1');


var port = new serialPort(process.platform == 'win32' ? 'COM3' : '/dev/ttyUSB0', {
    baudRate: 9600
});

port.on( 'open', function() {
    console.log('stream read...');
});

port.on( 'end', function() {
    console.log('stream end...');
});

port.on( 'close', function() {
    console.log('stream close...');
});

port.on( 'error', function(msg) {
    console.log(msg);
});

port.on( 'data', function(data) {
    console.log(data);

    var buffer = data.toString('ascii').match(/\w*/)[0];
    if(buffer !== '') bufferId += buffer;

    clearTimeout(timeout);
    timeout = setTimeout(function(){
        if(bufferId !== ''){
            id = bufferId;
            bufferId = '';
            socket.emit('data', {id:id});
        }
    }, 50);
});

io.on('connection', function (socket) {
    socket.emit('connected');
});

app.listen(80);

最佳答案

这可能不是 SO 问题的答案,但在与 test 类似的情况下,同样的错误“TypeError: app.listen is not a function”可能可以通过导出模块 应用

$ ./node_modules/.bin/mocha test

可以输出

TypeError: app.listen is not a function

解决方案:

尝试添加到 server.js 文件的底部:

module.exports = app;

关于javascript - NodeJS - TypeError : app. listen 不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39810652/

相关文章:

javascript - Google Charts MySQL 查询错误

javascript - ExtJS 4 菜单颜色选择器 (Ext.menu.ColorPicker) 中的 CustomColors 颜色

html - 我可以在模板中使用不带路由的 Socket.io 和 Express 吗?

node.js - nvm 无法在 mac 上下载

node.js - 使用 NVM 设置 Node 版本或安装(如果不可用)。

javascript - 是否可以控制无法控制的输入文本? - react

javascript - jquery .val() 和谷歌闭包编译器

javascript - 如何使用 npm jquery 模块?

javascript - 如何在服务器上检查客户端是否已通过身份验证?

node.js - Node 版本管理器在 M1 Macbook Air 上运行非常慢