当我为每条路线提供文件时,如何设置express.io.我正在努力应用examples。
我有一个标准的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');
因为这会产生错误。
答案 0 :(得分:1)
似乎省略了servepage.js文件的require语句
servepage.js
module.exports = function(){ ... };
app.js
var servepage = require("./routes/servepage.js");
app.io.route('ready', servepage);