[Custom Fetch Event] fired when fetch finished #fetch #json
const fetchJson = (url, fn) => {
fetch(url)
.then(response => response.json())
.then(json => fn(json))
.then(addDataReadyEvent)
.catch(ex => {
console.log('parsing failed: ', ex);
});
}
const dataDB = {
name: "dataDB",
view: "0",
img_url: "",
dbs: ["hsp"],
hsp: {
data1: [],
data2: []
}
};
const hspDbSet = (data) => {
dataDB.img_url = data.img_url;
dataDB.hsp.data1 = data.hsp1;
dataDB.hsp.data2 = data.hsp2;
console.log("hspDbSet", dataDB);
dataReady();
}
const initData = (url) => {
fetchJson("https://nwp-cgn.de/api/hsp/", hspDbSet);
}
const dbDataEvent = new Event('dbDataReady');
const addDataReadyEvent = () => document.dispatchEvent(dbDataEvent);
document.addEventListener('dbDataReady', () => {
console.log("DB-Data Ready!");
alert("DB-Data Ready!")
});