将参数传递到函数导出的节点
pass arguments to function exported node
路由.js
var categories = require('../controllers/categories.server.controller');
module.exports = function(app) {
app.get('/',function(request,response){
return response.send("Welcome");
});
app.route('/')
.get(function(request, response) {
return response.send('Rayees');
});
.post(categories.create);
app.route('/:categoryId')
.get(categories.read)
.put(categories.update)
.delete(categories.delete)
app.param('categoryId', categories.categoryId)
};
app.js文件
'use strict'
var express = require('express');
var path = require('path');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var app = express(),
mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/pressworld');
var category = require('./server/routes/category.server.routes')(app);
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
extended: false
}));
app.use(cookieParser());
app.use('/api/category', category);
我收到此错误
TypeError: Router.use() requires middleware function but got a undefined
at Function.use (D:'Development'reduxpress'node_modules'express'lib'router'index.js:458:13)
at EventEmitter.<anonymous> (D:'Development'reduxpress'node_modules'express'lib'application.js:219:21)
at Array.forEach (native)
at EventEmitter.use (D:'Development'reduxpress'node_modules'express'lib'application.js:216:7)
at Object.<anonymous> (D:'Development'reduxpress'app.js:49:5)
at Module._compile (module.js:413:34)
at Object.Module._extensions..js (module.js:422:10)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Module.require (module.js:367:17)
at require (internal/module.js:16:19)
at Object.<anonymous> (D:'Development'reduxpress'bin'www:7:11)
at Module._compile (module.js:413:34)
at Object.Module._extensions..js (module.js:422:10)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
使用express。路由器和返回路由器obj,并将其用于express中间件。
请修改您的routes.js并使用router.get、router.post而不是应用程序。
module.exports = function(app) {
var express = require('express');
var router = express.Router();
router.get('/',function(request,response){
return response.send("Welcome");
});
return router;
};
相关文章:
- 如何从模块链中调用函数.导出到节点中
- 如何在动态创建的节点上绑定函数
- 如何检查DOM节点是否继承自构造函数
- 如何发送作为节点请求响应函数中的代码块的响应
- 从节点中的回调函数返回值
- 如何在节点模块中从命令行运行函数
- 以后添加的节点不会附加到 jQuery UI 函数
- 节点模块对象范围:在所有函数之间共享一个对象
- 节点.js子进程中的运行函数
- 节点 js 在启动时调用函数一次
- 节点JS中的函数调用
- 在我的html中使用节点函数
- 从 PHP 按钮启动节点函数
- 节点函数在请求完成之前返回“undefined”,并具有所需的返回值
- 删除父元素上的节点函数
- 节点函数结果未定义
- 节点函数未中断循环
- 为节点函数定义自定义回调
- 对txt文件中的每一行执行节点函数
- 返回节点函数解析错误