求助: Node 报错但不知道怎样解决,求前辈们指点~~

2018-04-04 16:02:47 +08:00
 OrangeXO
各位前辈,我的 Node 代码收到以下报错,我实在看不懂报错的意思和应该怎样解决,求指点
if (fn.handle && fn.set) app = fn;
^
TypeError: Cannot read property 'handle' of undefined
at Function.app.use (/Users/sylvia/Documents/FE/Daily-Learning/Node/final/node_modules/express/lib/application.js:110:9)
at Object.<anonymous> (/Users/sylvia/Documents/FE/Daily-Learning/Node/final/server.js:46:8)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Function.Module.runMain (module.js:441:10)
at startup (node.js:140:18)
at node.js:1043:3

以下为全部代码
var express = require('express');
var expressStatic = require('express-static');
var mysql = require('mysql');
var cookieParser = require('cookie-parser');
var cookieSession = require('cookie-session');
var bodyParser = require('body-parser');
var consolidate = require('consolidate');
var expressRoute = require('express-route');
var multer = require('multer');
var multerObj = multer({dest:'./static/upload'});



var server = express();
server.listen(8080);


//1 获取前台请求数据
//get 自带
server.use(multerObj.any());

//2 获取 cookie、session
server.use(cookieParser());
(function(){
var keys=[];
for(var i=0;i<100000;i++){
keys[i]='a_' + Math.random();
}
server.use(cookieSession({
name:'sess_id',
keys:keys,
maxAge:20*60*1000 //20mins
}));
})();


//3 模版
server.engine('html',consolidate.ejs);
server.set('views','template');
server.set('view engine','html');

//4route
var r1 = express.Router();
var r2 = express.Router();

server.use('/article/',r1);
r1.get('/1.html',(req,res)=>{
res.send('我是文章').end();
});
r1.get('/2.html',(req,res)=>{
res.send('我也是文章').end();
});

server.use('/blog/',r2);
r2.get('/a.html',(req,res)=>{
res.send('我是 blog').end();
});
r2.get('/b.html',(req,res)=>{
res.send('我也是 blog').end();
});


//5default:static
server.use(expressStatic('./static/'))
662 次点击
所在节点    问与答
2 条回复
Sparetire
2018-04-06 11:30:10 +08:00
server.js 46 行,估计有哪个地方没传参数导致空指针异常
OrangeXO
2018-04-07 12:00:58 +08:00
@Sparetire 谢谢,已解决,问题成因是 express 版本太老。。。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/444323

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX