-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathexercise4.ts
More file actions
38 lines (35 loc) · 934 Bytes
/
Copy pathexercise4.ts
File metadata and controls
38 lines (35 loc) · 934 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
interface Curso {
nome: string;
horas: number;
aulas: string;
gratuito: boolean;
tags: string[];
idAulas: number[];
nivel: 'iniciante' | 'avancado';
}
async function fetchCursos() {
const response = await fetch('https://api.origamid.dev/json/cursos.json');
const data = await response.json();
mostrarCursos(data);
}
fetchCursos();
function mostrarCursos(cursos: Curso[]) {
cursos.forEach((curso) => {
let color;
if (curso.nivel === 'iniciante') {
color = 'blue';
} else if (curso.nivel === 'avancado') {
color = 'red';
}
document.body.innerHTML += `
<div>
<h2 style="color: ${color};">${curso.nome}</h2>
<p>Horas: ${curso.horas}</p>
<p>Aulas: ${curso.aulas}</p>
<p>Tipo: ${curso.gratuito ? 'Gratuito' : 'Pago'}</p>
<p>Tags: ${curso.tags.join(', ')}</p>
<p>Aulas: ${curso.idAulas.join(' | ')}</p>
</div>
`;
});
}