Size: a a a

2019 May 19

DE

Denis Efremov in javascript_ru
javascript
let payload = [`Фильтр: ${JSON.stringify(filter)}`];
 // this.$store.commit('addPost', payload);
SMS.listSMS(
 filter,
 (data) => {
   data.forEach((item, index) => {
     payload.push(item.Data + ' ' + item.body + '/n');
   });
   payload = allSMS;
   this.$store.commit('addPost', payload.join(''));
 },
 (err) => {
   payload = 'Ошибка в самом методе listSMS: ' + err;
   this.$store.commit('addPost', payload.join(''));
 }
);
источник

DE

Denis Efremov in javascript_ru
 ^^^
источник

DE

Denis Efremov in javascript_ru
Но юзать колбеки - это моветон и отстой
источник

DE

Denis Efremov in javascript_ru
javascript
class SMS {
 all (payload) {
   return new Promise((resolve, reject) => {
     SMS.listSMS(
       filter,
       (data) => {
         data.forEach((item, index) => {
           payload.push(item.Data + ' ' + item.body + '/n');
         });
         resolve(payload.join(''));
       },
       (err) => {
         reject(new Error('Ошибка в самом методе listSMS: ' + err));
       }
     );
   })
 }
}

const sms = new SMS();
const allSms = await sms.all([`Фильтр: ${JSON.stringify(filter)}`]);

this.$store.commit('addPost', allSms);
источник

S

Syntax Highlight Bot in javascript_ru
Denis Efremov
javascript
class SMS {
 all (payload) {
   return new Promise((resolve, reject) => {
     SMS.listSMS(
       filter,
       (data) => {
         data.forEach((item, index) => {
           payload.push(item.Data + ' ' + item.body + '/n');
         });
         resolve(payload.join(''));
       },
       (err) => {
         reject(new Error('Ошибка в самом методе listSMS: ' + err));
       }
     );
   })
 }
}

const sms = new SMS();
const allSms = await sms.all([`Фильтр: ${JSON.stringify(filter)}`]);

this.$store.commit('addPost', allSms);
источник

DE

Denis Efremov in javascript_ru
источник

M

Mihail_20_vek in javascript_ru
Ребят, спасибо, но я не могу использовать промисы - это чужая библиотека - планиг для cordova
источник

M

Mihail_20_vek in javascript_ru
Denis Efremov
Отрабатывает. Просто this.$store.commit('addPost', payload); происходит раньше того, как ты наполняешь переменную данными
у меня мысль такая была, но не не смог сообразить как этой проверить. А вы как сразу это просекли?
Есть какой то подход это определять? (опыта у меня не много)
источник

DE

Denis Efremov in javascript_ru
Ошибка в самом методе listSMS - на самом деле ошибка которую ты читаешь в коллбеке метода, а не в методе
источник

DE

Denis Efremov in javascript_ru
Коллбек - это функция которая выполнится по завершению действия, занимающего время
источник

DE

Denis Efremov in javascript_ru
А коммит выполняется сразу и не ждет
источник

DE

Denis Efremov in javascript_ru
Mihail_20_vek
Ребят, спасибо, но я не могу использовать промисы - это чужая библиотека - планиг для cordova
Не пойму что тебе мешает использовать промис
источник

M

Mihail_20_vek in javascript_ru
Denis Efremov
Ошибка в самом методе listSMS - на самом деле ошибка которую ты читаешь в коллбеке метода, а не в методе
что такое колбэк я знаю (но опыта правда мало, больше руковожу чем кодю::😊
а почему не использовать промисы вместо колбэка.... Думал раз чужой объект метод (плагин cordova), то нельзя. Сейчас покумекаю
Спасибо!
источник

DE

Denis Efremov in javascript_ru
У меня проект на кордова
источник

M

Mihail_20_vek in javascript_ru
Denis Efremov
У меня проект на кордова
кажется я понял - SMS.listSMS это же просто метод а конструкция SMS.listSMS (параметры, функции) это просто колбек который можно превратить в промисы?
СУпер!
источник

DE

Denis Efremov in javascript_ru
Mihail_20_vek
кажется я понял - SMS.listSMS это же просто метод а конструкция SMS.listSMS (параметры, функции) это просто колбек который можно превратить в промисы?
СУпер!
Для некоторых методов можно юзать промисифай
источник

M

Mihail_20_vek in javascript_ru
Denis Efremov
Для некоторых методов можно юзать промисифай
👍
источник

p

p0rsche in javascript_ru
Флексите в воскресенье?
источник

p

p0rsche in javascript_ru
Одобряю 🙂
источник

in javascript_ru
p0rsche
Флексите в воскресенье?
На работе
источник