无法访问 Dialogflow 实现参数
Dialogflow fulfillment parameter not accessible
我正在尝试使用 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));
问题是 agent.parameters.currency-name
被视为试图访问 agent.parameters.currency
并减去 name
.
中的内容
要引用包含字母和数字以外的字符的参数名称,您需要使用 []
引用和名称字符串。像这样:
agent.parameters['currency-name']
您还可以更改 Dialogflow 中的参数名称以删除连字符。
我正在尝试使用 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));
问题是 agent.parameters.currency-name
被视为试图访问 agent.parameters.currency
并减去 name
.
要引用包含字母和数字以外的字符的参数名称,您需要使用 []
引用和名称字符串。像这样:
agent.parameters['currency-name']
您还可以更改 Dialogflow 中的参数名称以删除连字符。