私が探していたものを手に入れました。 最初のステップは、async function
を作成し、その関数内で同期しているかのように実行する必要があるすべてのコードを配置することです。ここで は、そのためのコードスニペットです:これにより
<html>
<body>
</body>
</html>
<script>
var fileList = [
'test_1.txt',
'test_2.txt',
'test_3.txt',
'test_4.txt',
'test_5.txt'
];
async function loadFiles()
{
for (i = 0; i < fileList.length; i++)
{
await fetch(fileList[i]).then(function(response){
return response.text();
}).then(function (text){
console.log(text);
});
console.log("loaded " + fileList[i]);
}
}
loadFiles();
</script>
、すべてのファイルが別の後に、1をロードされます。 以前は非同期で行われていたjavascriptのシーケンシャルタスクを管理するのは簡単なので、これは非常に驚くべきことです。
'await'はあなたのコードを同期させません。これは*シンクロするようなコードを書くことを可能にします。ファイルを順番にフェッチしたい場合は、順番にフェッチを待ちます: 'var a = await fetchFile(...); var b = fetchFile(...)を待ちます。 ... '。 –
必要なのは[Fetch API](https://developer.mozilla.org/en/docs/Web/API/Fetch_API)だけです。 – Ryan