2

我正在尝试使用 NodeJS 实现对话流(dialogflow-fulfillment)。

我正在尝试从 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));
4

1 回答 1

2

问题是它agent.parameters.currency-name被视为试图访问agent.parameters.currency和减去name.

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

agent.parameters['currency-name']

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

于 2018-12-15T12:25:40.490 回答