Javascript 使用异步函数的DataMaps js问题
我已经创建了一个脚本,该脚本从API获取数据,格式化数据并使用数据映射使用它 在我的.js文件中,我可以简单地调用:Javascript 使用异步函数的DataMaps js问题,javascript,asynchronous,d3.js,datamaps,Javascript,Asynchronous,D3.js,Datamaps,我已经创建了一个脚本,该脚本从API获取数据,格式化数据并使用数据映射使用它 在我的.js文件中,我可以简单地调用: var map = new Datamap({element: document.getElementById('container')}); 它将在选定的div中渲染贴图。 问题是,如果我在异步函数中使用它从API获取数据,并渲染填充了API数据的贴图,我会得到以下错误: Uncaught (in promise) TypeError: Cannot read propert
var map = new Datamap({element: document.getElementById('container')});
它将在选定的div中渲染贴图。
问题是,如果我在异步函数中使用它从API获取数据,并渲染填充了API数据的贴图,我会得到以下错误:
Uncaught (in promise) TypeError: Cannot read property 'select' of undefined
at Datamap.drawSubunits (datamaps.all.js:184)
at draw (datamaps.all.js:789)
at Datamap.draw (datamaps.all.js:768)
at new Datamap (datamaps.all.js:730)
...
如果在异步函数中以这种方式调用映射,甚至会出现此错误,因此数据不是问题所在:
async function fetchData() {
try {
const response = await fetch('https://corona.lmao.ninja/v2/countries?yesterday=&sort=');
const data = await (response.json());
var map = new Datamap({element: document.getElementById('container')});
return data;
} catch (error) {
console.error(error);
}
}
fetchData();
如果我放置var map=newdatamap({element:document.getElementById('container')})在其工作的功能之外。
我对此一无所知
任何帮助都将不胜感激。
第一篇文章和英语不是我的主要语言。错误判断,您使用了不存在的变量“select”或空变量。可能是我拼写错误,我的英语水平不太好从错误判断,您使用了不存在的变量“select”或空变量。也许我拼错了,我的英语水平不太好