Совет по Joomla: используем Promise в Ajax-запросах
В статье Ajax-запросы нативными средствами Joomla было подробно разобрано, как с помощью Joomla.request можно легко создавать Ajax-запросы в Joomla.
В одном из комментариев был вопрос по поводу Promise, а умеет ли Joomla? Умеет, но начиная с Joomla 4. Достаточно при создании запроса выставить флаг promise в true и результатом выполнения запроса будет Promise:
Joomla.request({ url: Joomla.getOptions('system.paths', '').root+'/index.php?option=com_ajax&format=json&module=example', method: 'POST', promise: true }) .then(response => { let text = JSON.parse(response.text); return text.data; }) .catch(error => { console.log(error); });
Таким образом мы можем эффективно строить асинхронные цепочки, добавив всего один флаг к вызову Joomla.request.
