我有一个包含所有依赖项和资源的 Index.js,它以这样开始,然后是我所有的函数和事件侦听器
//Index.js
const Discord = require("discord.js")
const external = require("./extern")
const Database = require("@replit/database")
const db = new Database()
const client = new Discord.Client()
//code
module.exports= {client};
现在我想要一个 EventListener,它也使用另一个名为 extern.js 的文件中的 const“客户端”
编辑:
//extern.js
const Discord = require("discord.js")
const client = require('./index')
client.on("ready", () => {
console.log(`logged in as ${client.user.tag}!`)
})
到目前为止我发现了什么:
我创建了一个函数 hello(),它在我的 extern.js 的控制台中打印 hello world 使用“module.exports = hello”导出函数 在我的 index.js 中我得到了它
const hello = require ("./extern")
hello()
效果很好,但只要我放
"const client = require("./index")"
在我的 extern.js 中,即使文件中未使用“客户端”,我也会收到消息错误,并且该行与函数无关
TypeError: hello is not a function
at Object.<anonymous> (/home/runner/Stechuhr/index.js:184:1)
at Module._compile (internal/modules/cjs/loader.js:999:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
at Module.load (internal/modules/cjs/loader.js:863:32)
at Function.Module._load (internal/modules/cjs/loader.js:708:14)
at Module.require (internal/modules/cjs/loader.js:887:19)
at require (internal/modules/cjs/helpers.js:74:18)
at Object.<anonymous> (/home/runner/Stechuhr/extern.js:2:14)
at Module._compile (internal/modules/cjs/loader.js:999:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
顺便说一句,我在 repl.it 中编码
答案 0 :(得分:-1)
您应该只导出客户端:
module.exports = client;
然后只有金额