JSFiddle - React, Tailwind, and code Playground
HTML
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<span id="status">Vazio</span>
<button id="ajax">Go!</button>
<hr>
<div id="feedback" class="hidden">Carregando</div>
CSS
.hidden {
display: none;
}
JavaScript
var button = document.getElementById('ajax');
var feedback = document.getElementById('feedback');
var status = document.getElementById('status');
button.addEventListener('click', event => {
feedback.classList.remove('hidden');
axios.get('https://httpbin.org/delay/2')
.then(response => {
status.innerHTML = 'OK';
})
.catch(erros => {
status.innerHTML = "Erro ao carregar dados.";
})
.then(() => {
feedback.classList.add('hidden');
})
});