Skulpt-解决时Promise无法正确返回

时间:2018-08-04 04:47:19

标签: javascript promise 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”。为什么我的诺言不能正确返回值?这是This example for more exact information

的延续

更多代码:

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 个答案:

没有答案