假设我在调用函数时有一个自动在我的应用程序中返回的集合,结果是这样的:
Collection {
'1234567890' => Message {
channel: TextChannel {
type: 'text',
id: '362557066864230402'
},
type: "DEFAULT",
content: "test"
}
}
我不确定'1234567890'=>消息部分。我知道它是ES6,但我不知道如何调用其中的任何嵌套数据,例如 content:“test”。
为此(假设集合使用变量集合,我尝试过:
let data = collection["123567890"].content;
let data2 = collection[0].content; //I know that's for arrays, but I thought it would be similar
输出'null'或未定义,错误
TypeError: Cannot read property 'content' of undefined
所以我明白我无法获得初始的集合对象。
最后一件事:每次调用函数时都会随机生成 1234567890 这个数字,因此我无法轻易对其进行硬编码。
Pastebin to the actual collection example. 出于某种原因,它会在该行之后停止打印(可能是太多字符?)
编辑:我的代码:
msg.channel.awaitMessages(msg => msg.author==user, { time: 10000, max: 1, errors: ['time'] })
.then((collected) => {
let channel = collected[0];
console.log(collected);
console.log(JSON.stringify(collected));
if(channel=="cancel") {
msg.channel.send("cancel");
return;
}
})
.catch(() => {
// ect ect
});
很抱歉没有太多的澄清,这真的让我很难过。