Javascript &引用;游戏活动“;键在开始时已更改,但应停止
我现在正在处理我的DiscordBot。在文件bot.json中是键“gameActivity”,可以通过网站进行更改。。。但当我启动机器人时,此密钥将被删除。提前谢谢 index.jsJavascript &引用;游戏活动“;键在开始时已更改,但应停止,javascript,html,node.js,json,discord.js,Javascript,Html,Node.js,Json,Discord.js,我现在正在处理我的DiscordBot。在文件bot.json中是键“gameActivity”,可以通过网站进行更改。。。但当我启动机器人时,此密钥将被删除。提前谢谢 index.js const Discord=require('Discord.js'); const bot=new Discord.Client(); 常数fs=要求('fs'); const config=require('./botconfig.json'); const web_info=require(“../dat
const Discord=require('Discord.js');
const bot=new Discord.Client();
常数fs=要求('fs');
const config=require('./botconfig.json');
const web_info=require(“../data/bot.json”)
bot.on('ready',()=>{
setActivity(web_info.gameActivity,{type:'PLAYING'});
log(`Logged as${bot.user.tag}!`);
var webdata={
状态:“在线”
};
让data=JSON.stringify(webdata);
fs.writeFileSync('../data/bot.json',data);
console.log(webdata);
});
bot.login(config.token);
bot.json
{“状态”:“在线”,“游戏活动”:“这将被删除!”}
启动bot后的bot.json
{“状态”:“在线”}
我猜是因为webdata
只发送状态,而不发送活动
您希望它看起来像是:
var webdata = {
status: 'online',
gameActivity: 'blah blah'
};
let data = JSON.stringify(webdata);
fs.writeFileSync('../data/bot.json', data);
console.log(webdata);
你可以用你想要的任何东西来代替“废话”
希望这有帮助,
冷却。无需创建新对象:
web_info.status='online';
让data=JSON.stringify(web_info);
fs.writeFileSync('../data/bot.json',data);
console.log(webdata);
正在删除
gameActivity
属性,因为您正在创建一个没有该属性的新对象,并将其写回bot.json
文件。创建一个新对象并设置所有属性,或者使用并修改原始对象。是的,我知道这是可行的,但是如果我在网站上更改了它,然后我想启动bot,gameActivity密钥将被更改。但我希望它保持不变,因为我在网站上改变了它。你明白吗?好的,我明白,但我不太擅长后端网络的东西,所以我将不得不离开这一个。我的道歉是的,我自己不擅长后端,我只做前端html和css:D