Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我可以在Dialogflow的内联编辑器中使用intent的参数吗?_Javascript_Dialogflow Es - Fatal编程技术网

Javascript 我可以在Dialogflow的内联编辑器中使用intent的参数吗?

Javascript 我可以在Dialogflow的内联编辑器中使用intent的参数吗?,javascript,dialogflow-es,Javascript,Dialogflow Es,使用Dialogflow时,会设置参数,简而言之,训练数据可能如下所示: 我想要奶酪比萨饼 我想要火腿比萨饼 给我一顿肉宴吧 因此,在奶酪、火腿和肉类盛宴上,您可以将它们存储在一个参数中,可能称为$pizzaoice 在意向书的回复部分,我知道我可以说“你选择了$pizzaoice” 但是我也可以在内联编辑器中这样做吗? 下面的方法不起作用,但我想如果可能的话,应该是这样的: agent.add('You selected' + $PizzaChoice); 有什么想法吗?如果您使用的是对

使用Dialogflow时,会设置参数,简而言之,训练数据可能如下所示:

  • 我想要奶酪比萨饼
  • 我想要火腿比萨饼
  • 给我一顿肉宴吧
因此,在奶酪、火腿和肉类盛宴上,您可以将它们存储在一个参数中,可能称为
$pizzaoice

在意向书的回复部分,我知道我可以说“你选择了
$pizzaoice

但是我也可以在内联编辑器中这样做吗? 下面的方法不起作用,但我想如果可能的话,应该是这样的:

agent.add('You selected' + $PizzaChoice);

有什么想法吗?

如果您使用的是
对话框流实现
库,并遵循其将参数指定给名为
agent
的意图处理程序的惯例,那么您可以在
agent.parameters
处获取对象中的所有参数

所以你想写的那行应该是

agent.add( 'You selected '+agent.parameters['PizzaChoice'] );   
或者,如果要使用ES6反向报价模板:

agent.add( `You selected ${agent.parameters['PizzaChoice']}` );

谢谢你,囚犯,使用第二个选项非常有效。非常感谢。我刚刚注意到,当我写你的任何一条建议时,我会在建议
“['PizzaChoice']最好用点符号写”
…你知道这意味着什么吗?这意味着,在这种情况下,你可以将其写为
代理.parameters.PizzaChoice
。我选择了我所使用的符号,因为参数名称可以包含无法使用点符号的字符。例如,“pizza choice”是有效的参数名称,但
agent.parameters.pizza choice
无效,但
agent.parameters['pizza-choice']
无效。