在discord.js上制作.env文件和可修改代码

问题描述

有人帮助我创建.env文件修改代码! 这是discord.js v12 我无法修改代码上的.env代码! 但是它没有用 请帮我这个系统!这是纱线安装方法

js文件=> rushGamerzClient.js

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);
    }

};

js文件=>此处的index.js代码

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);