私はasync/cwaの待ち受けに1年ほど使っていますが、誰でも簡単な例を書いてください。事前に おかげで、それは実用的な実装のクリアな視界を与えるよう例では、角度/ jqueryの約束が含まれている場合、それは非常に参考になるいくつかの助けを見つけると同じAsync/Await、簡単な例(typescript)
UPDATE
を実装するために楽しみにして
私はasync/cwaの待ち受けに1年ほど使っていますが、誰でも簡単な例を書いてください。事前に おかげで、それは実用的な実装のクリアな視界を与えるよう例では、角度/ jqueryの約束が含まれている場合、それは非常に参考になるいくつかの助けを見つけると同じAsync/Await、簡単な例(typescript)
UPDATE
を実装するために楽しみにして
キーはES6 Promiseまたはlib.d.ts(Read more)に見出さPromiseLike
とPromiseConstructorLike
インターフェースを実装するものを使用することです。 jQueryはこれらのインターフェイスをdoes not implementと約束しているので、それはうまく動作しません。 await
文を含む任意のコードがasync
関数内にする必要があるので、私は1つのコードをラップしていることを
function getStringFromWebServerAsync(url: string) {
return new Promise<string>((resolve, reject) => {
// note: could be written `$.get(url).done(resolve).fail(reject);`,
// but I expanded it out for clarity
$.get(url).done((data) => {
resolve(data);
}).fail((err) => {
reject(err);
});
});
}
async function asyncExample() {
try {
let data = await getStringFromWebServerAsync("http://localhost/GetAString");
console.log(data);
}
catch (err) {
console.log(err);
}
}
asyncExample();
注:
はここES6の約束を使った簡単な例を示します。
async/awaitを使用するには、Typescript 1.7でES6を対象にする必要があります。下のバージョンでは、Visual Studioの出力の詳細については
TS1308 'await' expression is only allowed within an async function.
と
TS1311 Async functions are only available when targeting ECMAScript 6 and higher.
は、例えば参照してhttp://blogs.msdn.com/b/typescript/archive/2015/11/03/what-about-async-await.aspx
これは良い情報ですが、あなたが十分な評判を持っていれば、コメントになるはずです。 –
私はそれをかなり認識していますが、あなたが言うように私は評判が足りません。そのために残念。 – Zartag
TypeScriptの非同期関数https://github.com/Microsoft/TypeScript/issues/1664を参照してください。また、https://smellegantcode.wordpress.com/2015/02/01/typescript-1-5-async-functions/およびhttp://www.dotnetcurry.com/javascript/1131/ecmascript6-async-using-generators-約束 –
ロードマップではasync/await 2.0と表示されます:https://github.com/Microsoft/TypeScript/wiki/Roadmap([7月23日](https://github.com/Microsoft/TypeScript/wiki/Roadmap/)時点) aa5e66fabe0d50ef53e6b05b3d1906a3eb40a35b)) –
MatijaGrcicと@JonSkeet skeet、コメントをいただきありがとうございます。私はすでにこれらのドキュメントを見ていましたが、実際にいくつかの簡単な実用的な例を楽しみにしていましたので、anglejs promiseの –