JavaScript SDK возвращает данные из вложенной функции

Я пишу гибридное приложение для платформы Telerik. Я хочу написать функцию, которая возвращает число из Everlive cloud. Вот мой код

function getSector(){
   var result = 0;
   var data = el.data('csector');
   data.get()
    .then(function (data) {
            var obj = JSON.parse(JSON.stringify(data));
            //alert(obj.result[0].current);
            result = obj.result[0].current;
        },
        function (error) {
            alert(JSON.stringify(error));
        });
   return result;}

Проблема в том, что я не могу вернуть значение. Всегда возвращает 0. Похоже, результат не может быть изменен из вложенной функции? Оповещение прекрасно работает. Пожалуйста помоги. Документация

1 ответ

Решение

Если вы вызываете свою функцию откуда-то из JS, а не напрямую из разметки (связывание данных), вам может потребоваться реализовать обещания через jQuery, angular или какую-либо другую библиотеку. Вот реализация jQuery: https://api.jquery.com/promise/

Если вы вызываете функцию через привязку данных, ваша функция должна изменить свойство вашей модели, а затем ваша разметка должна быть привязана к этому свойству. Без дополнительной информации о вашем проекте трудно ответить однозначно.

Другие вопросы по тегам