3

助けが必要!フォーム co の外でデータを取得するにはどうすればよいですか? それらを .then() で処理したくありません。

次のようなコードがあります(ES6):

 static class MyClass{
    //get some data
    static getMyData(){
           co(function *() {
                    //get data by yield, the value is json data
                    let value = yield getSomeData();
                    return value;
         });
    }
}

今は .then() でデータを処理したくありません。値を取得したいだけです。しかし、私がこれを行うと:

var result = co(function *(){});

私が得るのはpromiseオブジェクトです...

では、json データをどのように取得すればよいでしょうか。ありがとう。

4

3 に答える 3

1

でこれを試すことができますyield。次のようなものです。

try{    
    var result = yield co(function *(){});
}catch(e){
    console.error(e);
}

しかし、非同期コードについては moar を読む必要があると思います。Q の約束をお勧めします。幸運を。

于 2015-03-05T12:07:25.297 に答える
0

var result = co.wrap(function* (){
  var list = yield.listNum();
  return list;
})

result(true).then(function(value){
  console.log(value);
})

わかりました。

于 2016-06-11T00:31:05.313 に答える