Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将值从discord.js发送到JSON文件 var ticketid; ticketid=0; module.exports={ 姓名:'票', description:“票证命令”, 执行(消息、参数、客户端){ ticketid=ticketid+1; message.channel.send('我们已向您发送了您的个人机票'); message.author.send('这是您的票证,要兑换票证并制作服务器,您必须DM BaysideGalaxy23#1219您的唯一票证。您的票证是:'+ticketid); client.channels.cache.get('7552229682887625287').send(ticketid); } }_Javascript_Discord.js - Fatal编程技术网

Javascript 将值从discord.js发送到JSON文件 var ticketid; ticketid=0; module.exports={ 姓名:'票', description:“票证命令”, 执行(消息、参数、客户端){ ticketid=ticketid+1; message.channel.send('我们已向您发送了您的个人机票'); message.author.send('这是您的票证,要兑换票证并制作服务器,您必须DM BaysideGalaxy23#1219您的唯一票证。您的票证是:'+ticketid); client.channels.cache.get('7552229682887625287').send(ticketid); } }

Javascript 将值从discord.js发送到JSON文件 var ticketid; ticketid=0; module.exports={ 姓名:'票', description:“票证命令”, 执行(消息、参数、客户端){ ticketid=ticketid+1; message.channel.send('我们已向您发送了您的个人机票'); message.author.send('这是您的票证,要兑换票证并制作服务器,您必须DM BaysideGalaxy23#1219您的唯一票证。您的票证是:'+ticketid); client.channels.cache.get('7552229682887625287').send(ticketid); } },javascript,discord.js,Javascript,Discord.js,我有一个变量ticketid,每次更新它时,我都想把这个新值发送到一个JSON文件。如何做到这一点?您可以使用Node.js的fs包来读写文件 首先,您需要它,然后,要读取文件,您可以使用readFileSync并写入文件writeFileSync 因此,假设您要编写的JSON文件位于根目录中,名为“tickets.JSON”,您可以这样做: //需要FS 常数fs=要求('fs'); //阅读 //读取文件,然后将缓冲区解析为实际的Javascript对象。 const data=fs.rea

我有一个变量ticketid,每次更新它时,我都想把这个新值发送到一个JSON文件。如何做到这一点?

您可以使用Node.js的
fs
包来读写文件

首先,您需要它,然后,要读取文件,您可以使用
readFileSync
并写入文件
writeFileSync

因此,假设您要编写的JSON文件位于根目录中,名为“tickets.JSON”,您可以这样做:

//需要FS
常数fs=要求('fs');
//阅读
//读取文件,然后将缓冲区解析为实际的Javascript对象。
const data=fs.readFileSync('tickets.json');
const tickets=JSON.parse(数据);
//写
//JSON格式化数据,然后写入文件
const dataToWrite=JSON.stringify(tickets,null,2);
fs.writeFileSync('tickets.json',data);
但是,如果JSON文件不在bot的根文件夹中,则必须传递绝对目录。对于本例,我假定它与命令位于同一文件夹中

因此,假设您要做的是存储这样的内容(一个数组,包含存储[ticket,userId]的类似map的数组):

您的最终命令可能如下所示:

module.exports={
姓名:'票',
description:“票证命令”,
执行(消息,参数){
//需要fs和path(我们将使用path来处理相对目录)
//如果您愿意,可以使用绝对路径
常数fs=要求('fs');
const path=require('path');
//阅读当前的门票
const data=fs.readFileSync(path.resolve(uu dirname,'./tickets.json');
const tickets=JSON.parse(数据);
//生成新票证,然后将其推送到票证数组
const ticketId=(tickets[tickets.length-1][0])+1;
tickets.push([ticketId,message.author.id]);
//使用新创建的票证保存票证
fs.writeFileSync(path.resolve(_dirname,'./tickets.json')、json.stringify(tickets,null,2));
//做你的事
message.author.send(`这是您的票证,要兑换票证并创建服务器,您必须DM BaysideGalaxy23#1219您的唯一票证。您的票证是:${ticketId}`);
message.channel.send(`我们已通过DM向您发送了您的个人机票');
message.client.channels.cache.get('7552229682887625287').send(`ticketId}-${message.author.toString()}`);
}
}
请注意,只有在JSON文件上已经有至少一张票证的情况下,此示例才有效,所以请注意。如果要将此作为起点,请处理异常或在JSON文件上手动创建第一个票证。

以下是有关如何在Node.js中读取和写入JSON文件的更多信息:

您可以查看是否有时间操作json文件!要手动创建第一张票证,您可以继续手动将其写入JSON文件:
[[1,“Random User ID”]]
我将其输入JSON文件,在discord中运行命令时没有发生任何事情,没有保存额外的票证,您介意帮助吗,谢谢。很抱歉给你添麻烦,没问题。你能告诉我问题出在哪里,这样我就可以编辑答案来帮助其他人回答这个问题吗?我只是在JSON文件中写的代码有点错误。