我有以下代码,如果我使用 console.log,它会记录 json,但我想将它保存在 jsonBlocks 变量中。但它不会起作用。我猜是因为异步的东西,但我找不到解决它的方法。
var jsonBlocks;
fetch('https://myurl')
.then(res => res.text())
.then(body => this.jsonBlocks = body )
我有以下代码,如果我使用 console.log,它会记录 json,但我想将它保存在 jsonBlocks 变量中。但它不会起作用。我猜是因为异步的东西,但我找不到解决它的方法。
var jsonBlocks;
fetch('https://myurl')
.then(res => res.text())
.then(body => this.jsonBlocks = body )
您可以使用async..await
特定的代码,例如:
async function getBlock() {
let jsonBlocks;
try {
var response = await fetch('https://myurl');
jsonBlocks = await response.text();
console.log(jsonBlocks)
} catch (e) {
// handle error
console.error(e)
}
}
getBlock()
如果您从 中返回任何东西getBlock
,它将被包裹在Promise
.