【发布时间】:2021-03-06 08:09:15
【问题描述】:
标题解释了我的问题。我正在尝试获取一个带有引号的字符串,以便可以使用 Node.js 传递到天气模块。到目前为止,这是我的代码(我尚未在此代码中设置 var CityToSearch,这是我需要帮助的)
而且是的,我正在使用 Discord.js 发送消息。
const Discord = require('discord.js')
const bot = new Discord.Client()
const PREFIX = '/';
const embed = new Discord.MessageEmbed()
const ping = require('minecraft-server-util')
const weather = require('weather-js')
bot.on('message', message => {
if (message.channel.type === 'dm') {return}
let args = message.content.substring(PREFIX.length).split(' ')
if(message.content.startsWith(PREFIX))
switch (args[0]) {
case 'weather':
if (args.includes('"')){
var CityToSearch =
}
weather.find({search: `city, ${CityToSearch}`, degreeType: 'F'}, function(err, result) {
if(err) console.log(err);
var currentw = new Discord.MessageEmbed()
.setColor(0x00ffff)
.setTitle(`Current Weather in ${args[1]} in state ${args[2]}`)
.addField('Temperature', result[0].current.temperature)
.addField('Sky Text', result[0].current.skytext)
.addField('Humidity', result[0].current.humidity)
.addField('Wind Speed & Direction', result[0].current.winddisplay)
.addField('Feels Like', result[0].current.feelslike)
.addField('Location', result[0].current.observationpoint)
.addField('Time', result[0].current.observationtime)
.addField('Date', result[0].current.date)
message.channel.send(currentw)
});
【问题讨论】:
-
你能告诉我们输入的字符串吗?否则很难帮助你...
-
这是一个示例输入字符串。代码使用
args.splice(' ')按空格拼接。示例:/weather "San Fransico" California。我想让San Fransico变成CityToSearch。 -
你能用“编辑”按钮更新问题吗?我将使用简单的正则表达式添加答案
-
好的,我做到了。也不介意我的语法,因为我的复制和粘贴实际上已经损坏了。
-
将
CityToSearch设置为'${args[1]} ${args[2]}'有效吗?
标签: javascript node.js arrays discord discord.js