javascript - 在 Node.js 中仅连接一次配置变量

标签 javascript node.js

我有一些文件:

tags.js:

var express = require('express'),
    router = express.Router(),
    monk = require('monk'),
    db = monk('localhost:27017/data');

...

module.exports = router;

records.js:

var express = require('express'),
    router = express.Router(),
    monk = require('monk'),
    db = monk('localhost:27017/data');

...

module.exports = router;

users.js:

var express = require('express'),
    router = express.Router(),
    monk = require('monk'),
    db = monk('localhost:27017/data');

...

module.exports = router;

我总是必须复制我的标题:

var express = require('express'),
    router = express.Router(),
    monk = require('monk'),
    db = monk('localhost:27017/data');

连接此配置变量一次的最佳解决方案是什么?

<小时/>

尝试这个变体In Node.js, how do I "include" functions from my other files? ,但这不起作用,因为我应该在tools.js中使用require(例如:require('express')),但我得到了错误。

我也尝试过这个变体node.js - accessing required variables from other files :

工具包.js:

var express = require('express'),
    router = express.Router(),
    monk = require('monk'),
    db = monk('localhost:27017/data');

tags.js:

var tools = require('../toolkit'),
    router = tools.router;

router.get('/', function(req, res) {
...
});

module.exports = router;

但我又出错了。

最佳答案

您需要从 toolkit.js 导出。因此,您的工具包将如下所示

var express = require('express');
exports.router = express.Router();
var monk = require('monk');
exports.db = monk('localhost:27017/data');

现在,您可以执行以下操作:

var toolkit = require('path/to/toolkit');
var router = toolkit.router;
var db = toolkit.db;

关于javascript - 在 Node.js 中仅连接一次配置变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33275506/

相关文章:

javascript - 如何转换字符串格式数据

javascript - 祝福名单失败

node.js - Webstorm 10 + Karma + ES6 - 单元测试

javascript - Tailwind CSS 不能用 React 和 Express 编译?

node.js - 通过端口 80 上的 PM2 运行 Node 应用程序

node.js - 密码哈希+盐如何工作

javascript - 将 Bootstrap 主题/模板添加到 Angular 应用程序

javascript - 将指向对象方法的指针安全地传递给 google.maps.event.addListener

javascript - 谷歌地图无法在类型之间进行更改

javascript - 如何等待 View 组件的 Vuex 状态初始化?