【问题标题】:How would I split the contents of a JSON file and then show user tags instead of ID's?如何拆分 JSON 文件的内容,然后显示用户标签而不是 ID?
【发布时间】:2021-01-06 19:12:58
【问题描述】:

所以我正在尝试为机器人创建一个列表管理员命令,并且我正在努力通过该命令将用户 ID 转换为标签。这是我目前所拥有的:

const { MessageEmbed } = require('discord.js');
const { readFileSync, existsSync } = require('fs');

module.exports = {
 name: 'list-admins',
 async execute(msg, args) {
  if (
   ['430437160613707796', '321332200668790786', '329220047824486400'].indexOf(
    msg.author.id
   ) === -1
  )
   return msg.channel.send(
    new MessageEmbed()
     .setColor('RED')
     .setDescription(`**You are not an owner**`)
     .setTimestamp()
   );

  try {
   var object = JSON.parse(readFileSync('admins.json', { encoding: 'utf8' }));
  } catch (error) {
   console.log(error);
  }

  var adminss = JSON.stringify(object);
  var synadmin = await adminss.split(`\n`);

  if (existsSync(`admins.json`)) {
   let embed = new MessageEmbed()
    .setTitle(`Synergy-V Admins`)
    .setColor('f3f3f3')
    .setDescription(`**${synadmin}**`);

   msg.channel.send(embed);
  }
 },
};

这是admins.json 文件的内容:

{
 "321332200668790786": true,
 "430437160613707796": true,
 "329220047824486400": true,
 "432158415528394762": true,
 "478475107833085952": true,
 "422244702608424961": true
}

【问题讨论】:

    标签: javascript node.js json discord discord.js


    【解决方案1】:

    您可以使用Object.keys()

    const object = { // get the object however you want
      "321332200668790786": true, 
      "430437160613707796": true, 
      "329220047824486400": true, 
      "432158415528394762": true, 
      "478475107833085952": true, 
      "422244702608424961": true
    };
    
    const tags = Object.keys(object); // `Object.keys()` returns an array with every key
    tags.map(id => message.client.users.cache.get(id).tag) // map the array to get the tags
    
    console.log(tags.join('\n'))
    

    【讨论】:

      【解决方案2】:

      读取admins.json 文件并对其进行字符串化时可能会出错,请尝试删除布尔值。

      您还必须遵守 "<@" + USER_ID + ">" 的格式才能从 id 中获取标签。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-22
      • 1970-01-01
      • 2013-09-26
      • 2011-10-20
      • 2021-06-04
      • 1970-01-01
      相关资源
      最近更新 更多