首页 > 解决方案 > 您如何从单独的命令模块访问主要的 Discord“.js”

问题描述

我想做一个 Discord Bot,我对 Node.js 的了解非常少,我想知道如何index.js从单独的命令模块文件(文件有module.exports={...})。我希望能够访问这些数据,以便每当我更改模块中某些内容的值时,它都会在主模块中更改以.js从另一个模块访问新信息。代码对于答案来说并不是真正必要的(但仍然是首选),我正在“理论上”看待这个

标签: javascriptnode.jsdiscorddiscord.jsnode-modules

解决方案


所以,假设你有这样的代码index.js

const x = 'foo';
const y = 'bar';

require('./sub.js');

sub.js你里面有以下内容:

console.log(x);
console.log(y);

控制台日志将失败,因为x并且y未定义。您必须这样修改index.js文件:

global.x = 'foo';
global.y = 'bar';

require('./sub.js');

通过此修改,现在可以从任何模块或文件访问x和变量。y更改索引的另一种方法是:

const x = 'foo';
const y = 'bar';

global.x = x;
global.y = y;

require('./sub.js');

在这种情况下,我们将预先存在的变量添加到 global 而不是编辑定义它们的行。这样,你可以在你的代码末尾添加这样的东西来获取你在全局中需要的任何变量。


推荐阅读