Commande -> Bot Discord NodeJS

Besoin d'aide pour un truc sur ma commande de traduction

Le problème exposé dans ce sujet a été résolu.

Bonjour/Bonsoir, j’aurai besoin d’aide concernant mon bot discord.

J’ai fait une commande qui permet de traduire ce qu’on veut en la langue qu’on veut. Voici le code :

const { Client, Message, MessageEmbed } = require("discord.js");
const translate = require('@iamtraction/google-translate');

module.exports = {
    name : 'traduire',
    description: "Permet de traduire un/une mot/phrase/texte en une autre langue",
    /**
     * 
     * @param {Client} client
     * @param {Message} message
     * @param {String[]} args
     */
    run : async(client, message, args) => {
        if(!args[0]) return message.channel.send('Veuillez spécifier une langue, faites !langues pour voir les langues disponibles.')
        const query = args.join(" ");
        if(!query) return message.channel.send("Veuillez spécifier un texte à traduire.");

        const translated = await translate(query, { to: `${args[0]}` });
        message.channel.send(translated.text);
    }
}

Ca traduit bien mais mon soucis est que dans le const query, ça prend tous les arguments, alors que je veux qu’il prenne que les arguments après l’argument 0 car l’argument 0 est pour sélectionner la langue de traduction. J’aurai donc juste besoin d’aide pour savoir qu’est ce que je dois mettre dans const query à la place de args.join(" ")

+0 -0

Bonjour,

La fonction slice en javascript peut faire ce que tu souhaites (https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Global_Objects/Array/slice)

const query = args.slice(1).join(" ")

Tu peux aussi utiliser le spread operator (https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Operators/Spread_syntax) ou le destructuring assignment (https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment)

const [language, ...query] = args;
+1 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte