2017-12-16 15 views
2

저는 javascript (특히 Node.js)를 사용하여 Alexa 스킬을 구축하고 있습니다. 이해가 안되는 오류가 발생합니다. 첫째, 코드 :Alexa 용 자바 스크립트

"use strict"; 

var Alexa = require("alexa-sdk"); 

var handlers = { 
    "LaunchRequest": function() { 
    this.response.speak(content[one]).listen(content[oneNext]); 
    this.emit(':responseReady'); 
    }, 
    "TwoIntent": function() { 
    this.response.speak(content[two]).listen(content[twoNext]); 
    this.emit(':responseReady'); 
    } 
}; 

var content = { 

     one: 'text', 
     oneNext: 'text', 
     two:'text', 
     twoNext: 'text', 
     three: 'text', 
     threeNext: 'text', 
     four: 'text', 
     fourNext: 'text', 
     five: 'text', 

    }; 

// Stock Alexa Handlers & Functions 

exports.handler = function(event, context, callback){ 
    var alexa = Alexa.handler(event, context); 
    alexa.registerHandlers(handlers); 
    alexa.execute(); 
}; 

내가 람다 인터페이스에 점점 오전 오류 : "하나는 정의되지 않은 수정하거나/글로벌 한/추가하십시오."의 모든에 따르면

을 documentation이 구문이 올바르다면 javascript에서 사전을 만드는 방법에 대한 설명서를 찾을 수 있습니다. 이것은 알렉사 또는 람다에 특정한 것입니까?

답변

1

대신 content[one] 사용 content.onecontent.oneNextcontent.twocontent.twoNext. 아니면 content["one"] ... 대체 구문입니다.

+0

기본적으로'var one = "one";'을 사용했다면 코드의 해당 부분이 작동합니다. JS 런타임은 "one"이라는 문자열 대신 "one"이라는 변수를 찾고있었습니다. –