Relazione tra i dati: i conditional
Condizionale semplice

Condizionale avanzato


Usare le API - un esempio pratico

Ultimo aggiornamento
È stato utile?




Ultimo aggiornamento
È stato utile?
È stato utile?
show = (data.request_type === "rinnovo" || data.request_type === "modifica")const optionsToCheck = [
"strade_circoscrizione_1",
"strade_circoscrizione_2",
"strade_circoscrizione_3",
"strade_circoscrizione_4",
"strade_circoscrizione_5",
"strade_circoscrizione_6",
"strade_circoscrizione_7",
"strade_circoscrizione_8",
"altre_strade_DS"
]
if (data.category !== "strade" || !optionsToCheck.includes(data.type.value)) {
show = false
return
}
async function fetchUrl(url, options = {}) {
try {
const response = await fetch(url, options);
if (!response.ok) {
throw new Error(`HTTP error! Status: ${response.status} ${response.statusText}`);
}
const jsonData = await response.json();
instance.root.streetOptions = jsonData.items.map(crc => crc.cod_circoscr_lavori)
} catch (error) {
console.error(`Fetch failed for ${url}:`, error.message);
return { error: true, message: error.message };
}
}
let savedStreet = instance.root.savedStreet
let streetOptions = instance.root.streetOptions
if (savedStreet !== data.address?.name) {
const name = data.address?.name
const url = `https://www.comune.verona.it/api/openapi/dataset/circoscrizioni?limit=50&matched_name=${name}&sortDir=asc`
fetchUrl(url)
instance.root.savedStreet = name
} else if (streetOptions) {
const chosenOption = data.type?.value
show = chosenOption && streetOptions.length > 0 && !streetOptions.some(option => chosenOption.includes(option))
}