gpt4 book ai didi

node.js - Express.js - 路由文件中的导出/访问功能

转载 作者:太空宇宙 更新时间:2023-11-03 23:04:46 26 4
gpt4 key购买 nike

我正在尝试导出路由文件中的函数。这是我的代码

app.js 文件

var express = require('express');
var bodyParser = require('body-parser');
var users = require('./routes/users');
var others=require('./routes/others')
var app = express();
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use('/', routes);
app.use('/others', others);
app.use('/users', users);
module.exports = app;

others.js 文件

var express = require('express');
var router = express.Router();
router.post("/test", function (req, res, next) {
res.send("success");
});
//Here i want to export function to users js file
var funDef=function(){
console.log("export a function")
}

moudle.exports=router;

如何在 users.js 文件中导出或调用 funDef。我尝试了以下方法,但不起作用

users.js 文件

var express = require('express');
var router = express.Router();
var readFun= require("./others.js");

router.post("/testUsers", function (req, res, next) {
res.send("suceess");
});
//getting undefined
readFun.funDef();

module.exports=router;

有人可以指导我吗?

最佳答案

尝试以下操作:

function router() {}

router.prototype.funDef=function(){
console.log("export a function")
}
moudle.exports.router=router;

另一个文件:

 var router = require('router').router;
var Router = new router();

Router.funDef();

编辑:

// module.js
'use strict';
var temp = "this is a test";

module.exports.func = function() {
return temp;
}

// app.js
'use strict';
var module = require('./module');
console.log(module.func());

关于node.js - Express.js - 路由文件中的导出/访问功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37920742/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com