Dialogflow实现参数不可访问

时间:2018-12-15 11:34:59

标签: javascript node.js json dialogflow dialogflow-fulfillment

我很想尝试使用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));

1 个答案:

答案 0 :(得分:2)

问题在于,agent.parameters.currency-name被视为尝试访问agent.parameters.currency并减去name中的内容。

要引用包含字母和数字之外的字符的参数名称,您需要使用[]引用和一个字符串作为名称。像这样:

agent.parameters['currency-name']

您还可以在Dialogflow中更改参数名称以删除连字符。