Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
170 views
in Technique[技术] by (71.8m points)

javascript - Spaces in Arguments for discord.js

I'm trying to tweet messages from discord.js, but whenever i tried to tweet a message with spaces i get "hello,from,discord" instead of "hello from discord"

const Twitter = require('./twitter')
const { prefix, token } = require('./config.json');

const client = new Discord.Client();

client.once('ready', () => {
    console.log('Ready!');
});

client.on('message', message => {
    if (!message.content.startsWith(prefix) || message.author.bot) return;

    const args = message.content.slice(prefix.length).trim();
    const command = args.shift().toLowerCase();

    if (command === 'tweet') {
        Twitter.makeATweet(args)
        message.channel.send('Tweet The Message Go to https://twitter.com/Epic_Meme_Bot to check it outer');
    } else if (command === 'beep') {
        message.channel.send('Boop.');
    }
    // other commands...
});

client.login(token);```
question from:https://stackoverflow.com/questions/65863242/spaces-in-arguments-for-discord-js

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

As Pentium said, that's because the arguments is an array of strings, and you're trying to turn that into a string, which would result in all of the elements inside the array being separated with commas. To avoid this, you can use the .join() method

Twitter.makeATweet(args.join(" ")) //this would separate all the arguments with a space

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...