我想从data.json上取下names,并将其发布到一个不一致的嵌入上. 例如,我试图在嵌入中打印Animal Skull,但它给了我这个错误.

错误

Unhandled Rejection: TypeError: Cannot read properties of undefined (reading '0')

Test.js

const { EmbedBuilder } = require("discord.js"); 
const datapath = ('data.json')

module.exports = {
  config: {
    name: "test",
    description: "Just a test command!",
  },
  permissions: ['SendMessages'],
  owner: false,
  run: async (client, message, args, prefix, config, db) => {

    message.reply({ embeds: [
      new EmbedBuilder()
        .setDescription(datapath.names[0])
        .setColor("Green")
    ] })
    
  },
};

我的data.json

[
    {
        "names": "Animal Skull",
        "itemtype": "Block, 32, 4, No, Yes",
        "image": "https://static.wikia.nocookie.net/cubixworlds/images/4/4c/Animal_Skull.png/revision/latest?cb=20220720212850"
    },
    {
        "names": "Asteroid Block",
        "itemtype": "Block, 1, 1, No, Yes",
        "image": "https://static.wikia.nocookie.net/cubixworlds/images/f/fe/Asteroid_Block.png/revision/latest?cb=20220725063800"
    }
]

如果有人能帮我,我将不胜感激.

推荐答案

您应该使用require从json获取数据.

const datapath = require('./data.json')

并且您的json包含一个对象数组,因此使用datapath[0].names来获取动物头骨

Javascript相关问答推荐

无法将nPM simplex-noise包导入在JS项目中工作

我可以使用CSS有效地实现最大宽度=100%和最大高度=100%,而无需父母有明确的/固定的宽度和高度,替代方法吗?

在JavaScript中声明自定义内置元素不起作用

使搜索栏更改语言

如何添加绘图条形图图例单击角形事件

无法检测卡片重叠状态的问题

获取Uint8ClampedArray中像素数组的宽度/高度

如何从网站www.example.com获取表与Cheerio谷歌应用程序脚本

如何使onPaste事件与可拖动的HTML元素一起工作?

我创建了一个创建对象的函数,我希望从该函数创建的对象具有唯一的键.我怎么能做到这一点?

使用原型判断对象是否为类的实例

确保函数签名中的类型安全:匹配值

如何在我的Next.js项目中.blob()我的图像文件?

获取';无法解决导入和导入";slick-carousel/slick/slick-theme.css";';错误

为什么云存储中的文件不能公开使用?

如何使用基于promise (非事件emits 器)的方法来传输数据?

基于产品ID更新条带产品图像的JavaScript命中错误

FindByIdAndUpdate在嵌套对象中创建_id

我们是否可以在reactjs中创建多个同名的路由

当S点击按钮时,我如何才能改变它的样式?