0

当我有每条路线的文件时,如何设置 express.io。我正在努力应用这些示例

我有一个标准的 Express 我正在尝试转换为 express.io:

Project
    app.js
    routes
       servepage.js
    Views
       servepage.jade
    public
       main.js   <-- client side javascript

在路由示例中,他们将这段代码放在 app.js 中:

var express = require('express.io');
  .... lots of Express routes omitted
app.io.route('ready', function(req) {
    req.io.emit('talk', {
        message: 'io event from an io route on the server'
    })
})

我只将路由定义放在 app.js 中:

app.io.route('ready', servepage);

并得到:

TypeError: undefined is not a function

我如何设置应用程序,而不仅仅是 app.js?为什么它给我这个错误?

编辑: servepage.js 文件有:

var express = require('express');

并不是:

var express = require('express.io');

因为这会产生错误。

4

1 回答 1

1

似乎您省略了 servepage.js 文件的 require 语句

服务页面.js

module.exports = function(){ ... };

应用程序.js

var servepage = require("./routes/servepage.js");
app.io.route('ready', servepage);
于 2015-05-23T13:30:01.990 回答