vechnokrainii
@vechnokrainii
ну почти всегда(

Как бэкенду отрефакторить этот код на js?

Всем привет. Мне как бэкенд разработчику, в связи с независимыми от меня обстоятельствами, пришлось выполнить некоторую работу на фронте. Есть bitrix24api. Есть там методы (почти все такие) из которых получить значения не так просто (для меня).
Например:
BX24.callMethod('user.current', {}, function(res){
    alert('Привет, ' + res.data().NAME + '!');
});

До этого момента хватало вызывать все методы в колбеках (да я знаю, что так не совсем правильно, но я надеялся что с меня скоро снимут это бремя)
Но изрядно утомившись от такой вложенности сделал(спасибо гугл) вот так:
const currentUser = () => {
    return new Promise((resolve, reject) => {
        BX24.callMethod('user.current', {}, function (res) {
            resolve(res.data())
        })
    })
}

async function getCurrentUser() {
    let result = await currentUser()
    return result
}
// и в нужно месте кода затем вызываю
let user = getCurrentUser()

Помогите это отрефакторить, пожалуйста, потому что писать минимум 2 конструкции на каждый метод api....
  • Вопрос задан
  • 293 просмотра
Решения вопроса 1
delphinpro
@delphinpro Куратор тега JavaScript
frontend developer
Кажется всё уже придумано до вас https://github.com/andrey-tech/bx24-wrapper-js
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
18 апр. 2024, в 21:56
2000 руб./за проект
18 апр. 2024, в 21:00
150 руб./за проект