问题描述
有人帮助我创建.env文件并修改代码! 这是discord.js v12 我无法修改此代码上的.env代码! 但是它没有用 请帮我这个系统!这是纱线安装方法!
const { Client } = require('discord.js');
module.exports = class rushGamerzClient extends Client {
constructor(options = {}) {
super({
disableMentions: 'everyone'
});
this.validate(options);
this.once('ready',() => {
console.log(`Logged in as ${this.user.username}!`);
});
this.on('message',async (message) => {
const mentionRegex = RegExp(`^<@!${this.user.id}>$`);
const mentionRegexPrefix = RegExp(`^<@!${this.user.id}> `);
if (!message.guild || message.author.bot) return;
if (message.content.match(mentionRegex)) message.channel.send(`My prefix for ${message.guild.name} is \`${this.prefix}\`.`);
const prefix = message.content.match(mentionRegexPrefix) ?
message.content.match(mentionRegexPrefix)[0] : this.prefix;
if (!message.content.startsWith(prefix)) return;
// eslint-disable-next-line no-unused-vars
const [cmd,...args] = message.content.slice(prefix.length).trim().split(/ +/g);
if (cmd.toLowerCase() === 'hello') {
message.channel.send('Hello!');
}
});
}
validate(options) {
if (typeof options !== 'object') throw new TypeError('Options should be a type of Object.');
if (!options.token) throw new Error('You must pass the token for the client.');
this.token = options.token;
if (!options.prefix) throw new Error('You must pass a prefix for the client.');
if (typeof options.prefix !== 'string') throw new TypeError('Prefix should be a type of String.');
this.prefix = options.prefix;
}
async login(token = this.token) {
super.login(token);
}
};
const rushGamerzClient = require('./Structures/rushGamerzClient');
const config = require('../config.json');
const client = new rushGamerzClient(config);
client.login();
解决方法
您几乎没有办法解决此问题:
使用具有以下内容的.env文件:
DISCORD_TOKEN="<your-token>"
然后在文件顶部使用dotenv
(使用npm i -G dotenv
安装),并使用环境变量登录
require('dotenv').config();
...
client.login(process.env.DISCORD_TOKEN);