我很想尝试使用NodeJS实现对话流(实现对话流)。
我试图从dialogflow访问参数,但是当我尝试访问currency-name
参数时,出现以下错误:ReferenceError: name is not defined
但是当我打印参数时,我得到:parameters: {"currency-name":["GBP","USD"],"number":500}
当前正在使用此代码:
agent.add("parameters: " + JSON.stringify(agent.parameters.currency-name));
agent.add("parameters: " + JSON.stringify(agent.parameters));
答案 0 :(得分:2)
问题在于,agent.parameters.currency-name
被视为尝试访问agent.parameters.currency
并减去name
中的内容。
要引用包含字母和数字之外的字符的参数名称,您需要使用[]
引用和一个字符串作为名称。像这样:
agent.parameters['currency-name']
您还可以在Dialogflow中更改参数名称以删除连字符。