为什么我的Amazon插槽返回undefined?

时间:2018-05-21 11:50:36

标签: javascript node.js amazon-web-services aws-lambda chatbot

我正在尝试按照本教程进行操作:

https://medium.com/@itsHabib/integrate-an-amazon-lex-chatbot-into-a-react-native-app-1536883ccbed

当我运行聊天机器人时,JSON如下:

{
  "dialogState": "Fulfilled",
  "intentName": "MakeUsername",
  "message": "Your username is mikeundefined",
  "messageFormat": "PlainText",
  "responseCard": null,
  "sessionAttributes": {},
  "slotToElicit": null,
  "slots": {
    "Name": "mike",
    "Number": "51"
  }
}

因此,看起来数字51正在存储。

但输出功能:

exports.handler = (event, context, callback) => {
    console.log(event.currentIntent)
    console.log(context)
    let { Name: name } = event.currentIntent.slots 
    let { Num: number } = event.currentIntent.slots 
    callback(null, close({
        contentType: "PlainText",
        content: `Your username is ${name}${number}`
    }))
}

打印出来

Your username is mikeundefined

为什么数字未定义?

1 个答案:

答案 0 :(得分:1)

该数字未定义,因为在第5行,let { Num: number }应为let { Number: number }