Slug: aula04-quiz-api
Hora de finalizar a página de quiz, com todos os passos necessários para jogar: selecionar a alternativa, receber feedback na tela em caso de erro ou acerto, contagem de pontos e exibição da tela de resultados.
Durante o desenvolvimento, vamos ver mais sobre o funcionamento das props, como trabalhar com mais de uma instância do mesmo componente na tela, pensar na lógica para capturar cliques, tratar os resultados e engatilhar mudanças de estado a cada ação do usuário.
Para que você possa publicar seu quiz e divulgar outros quizzes na tela, vamos começar com as ferramentas do Next.js para criação de endpoints e manejo de requisições e respostas.
<Input>props do React e a prop keydata-[] para passar informações de estilo para o componente das alternativasCORS para poder acessar quizes externosSe você ainda não fez o deploy do seu projeto na Vercel, agora é a hora! Compartilhe no Discord e também nas redes sociais. Não esquece de marcar a gente!
name e exiba o nome da pessoa que está jogando na tela de resultados. Dica: o Next.js tem uma lib pra te ajudar nisso!Vamos deixar aqui um trecho de código para te ajudar a resolver este desafio:
<ExternalQuizList hasName={hasName}>
{db.external.map((url) => {
const prepareUrl = url
.replace(/\//g, '')
.replace('https:', '')
.replace('.vercel.app', '');
const [repoName, user] = prepareUrl.split('.');
return (
<li key={url}>
<Widget.Topic href={`/quiz/${user}__${repoName}?name=${name}`}>
{`${user}/${repoName}`}
</Widget.Topic>
</li>
);
})}
</ExternalQuizList>
A implementação por enquanto fica com você! A resposta deste desafio vem com a próxima (e última) aula!
api/dbVocê pode, depois do deploy, simplesmente marcar a gente e também usar as hashtags #ImersaoReact e #alura. Mas quer fazer melhor? Você pode usar esse plugin do Chrome para gravar o seu site em ação, scrollar e mostrar efeitos especiais e ainda passear pelo seu código quando ele estiver interessante.
Poste no seu Instagram, Linkedin, Twitter ou Facebook e não esqueça de marcar #ImersaoReact, @aluraonline e nosso time para que a gente deixe um comentário e, quem sabe, você apareça nos extras das aulas!