Skulpt - обещание не вернулось правильно при разрешении

Я пытаюсь получить стандартный ввод от текстовой области, и я близок к тому, чтобы найти решение, но я обнаружил, что мое обещание неправильно возвращает значение.

 function sInput() {
      return new Promise(function(resolve,reject){
         $("#outputField").on("keyup", function(e){
             if (e.keyCode == 13){
                console.log("test");
                resolve("5")
                resolve("random test");
             }
         })
      })
   }

Приведенный выше код - это то, что я имею до сих пор (который не возвращает "5" или "случайный тест"), но если я изменю функцию на

 function sInput() {
        return "5"
   }

Тогда "5" правильно возвращается. Почему мое обещание не возвращает значение правильно? Это продолжение этого примера для более точной информации.

Больше код:

function runit() { 
   var prog = document.getElementById("inputField").value; 
   var mypre = document.getElementById("outputField"); 
   mypre.innerHTML = ''; 
   Sk.python3 = true;
   Sk.pre = "outputField";

   Sk.configure({ output:outf, 
                  read:builtinRead,
                  inputfun: sInput,
                  inputfunTakesPrompt: true});



   var myPromise = Sk.misceval.asyncToPromise(function() {
       return Sk.importMainWithBody("<stdin>", false, prog, true);
   });

   myPromise.then(function(mod) {
       console.log('success');
   },
       function(err) {
       console.log(err.toString());
   });
} 

0 ответов

Другие вопросы по тегам