Вы можете предпочесть не использовать блейд для обработки этой ситуации, поскольку вы используете ajax на внешнем интерфейсе для управления этим компонентом DOM. альтернатива, которую я бы использовал в вашем случае:
const axios = require('axios');
async function getCount() {
try {
const data = axios.get('{{route('live.review')}}');
const elCount = document.getElementById('#mycount');
if (data > 0) {
// const elText = document.createTextNode(data);
// elCount.appendChild(elText);
elCount.style.visibility = 'visible';
elCount.innerHTML(data);
return;
}
elCount.style.visibility = 'hidden';
} catch (e) {
window.console.error('Error! ', e.message);
}
}
setTimeout(getCount, 1000);
Использование Ajax
function getCount() {
jQuery.ajax({
type: 'GET',
url: '{{ route("live.review") }}',
success: (data) => {
const elCount = jQuery('#myCount');
if (data > 5) {
elCount.html(data);
elCount.show();
return;
}
elCount.hide()
},
error: (error) => {
window.console.error('Error! ', error.message)
},
});
}
setTimeout(getCount, 1000)
Всегда хорошо также быть уверенным в результатах вашего запроса, поэтому Для гарантии, каждый раз, когда вы делаете запрос, снимайте журнал с результатом запроса только для гарантии window.console.log(data)
(В среде разработки, конечно!)