Serhii
ппц, думал уже самому локально попробывать, а тут пакетов перепакетов. ради какой то модалки
Tim
)))
Tim
я админ шаблон купил. тут все складно и вместе работает, стараюсь заюзатьпомаксимуму)
Tim
кароч помогло) http://f1.s.qip.ru/lipRblr7.png
Tim
правда логику я так и не догнал )))
$.magnificPopup.open({
items: {
src: '#modalForm',
myvar: 'siski',
},
Serhii
$.magnificPopup.open({
myvar: 'sasai lalka',
items: {
src: '#modalForm',
},
type: 'inline'
});
Object {myvar: "sasai lalka", items: Object, type: "inline", isObj: true, index: 0}
$.magnificPopup.instance.st.myvar
"sasai lalka"
Serhii
updateItemHTML: function() {
var item = mfp.items[mfp.index];
Serhii
у тебя плагин попытается обновить хтмл по твоей переменной
Tim
Tim
аа.. вот она куда попала
Tim
внизу
Serhii
да, и достучаться е ней можно через инстанс
Tim
ага. this
Tim
Serhii
не знаю через this ли но $.magnificPopup.instance.st.myvar если глобально
Serhii
сорсы > документации
Alex
Может всё-таки в личку перейдёте?
Serhii
не парся, npc, квэст уже пройден
Alex
Когда только 2 человека больше 40 минут беседуют в чатике с количеством 1647 человек, то невольно начинаешь париться.
Anonymous
дщд
Anonymous
лол
Oleg
Это норма
uRusure
Ребят, посоветуйте ресурсы по изучению JS на рузге, кроме learn.javascript.ru, Sorax, LoftBlog.
Виталий
#noobs
Artёm
Ребят, что я делаю не так? Я что-то упустил
function loadDataFromServer () {
let data = {};
var xhr = new XMLHttpRequest();
xhr.open("GET",'http://example.ru');
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.onload = function() {
if (xhr.status === 200) {
data = JSON.parse(xhr.responseText);
}
else {
alert('Request failed. Returned status of ' + xhr.status);
}
}
xhr.send();
return data
}
Artёm
Возвращает пустой объект
Artёm
Почему, я ведь сериализую полученный JSON в объект
Artёm
Если делать console.log(JSON.parse(xhr.responseText); то всё ок, выводит объект
Artёm
Но как результат выполнения функции, не канает, что не так?
Artёm
Serhii
ты серьезно?
Artёm
это вывод console.log
Artёm
Ну да
Artёm
А че, похоже что я приколоться забежал?
Artёm
:D
Serhii
окей, чтобы заработало, сделай вместо присвоения data = JSON.parse(xhr.responseText);
Serhii
Object.assign(data, JSON.parse(xhr.responseText))
Artёm
Аа, вот это нонсенс
Artёm
Посмотрю что за метод такой, спасибо
Artёm
Я думал JSON.parse просто возвращает и можно присвоить любому объекту
Serhii
нонсенс это то что ты хочешь чтобы у тебя функция вернула обьект который присваивается асинхронно
Artёm
Аааааа, вот в чем ебанина
Serhii
Object.assign позволяет присваивать но главная фишка - не теряя ссылки
Serhii
но ты никогда не узнаешь когда у тебя появится таки данные в data
Artёm
Я понял, возврат осуществится в любом случае
Artёm
А разумно поставить проверку?
Artёm
Или тут надо промис делать както?
Serhii
разумно создать промис
Serhii
возвращай его вместо данных
Andrey
зачем вообще создавать переменную и потом переприсваивать, хоть даже и ассигном. Просто возвращай JSON.parse(xhr.responseText) сразу.
Andrey
И да, промисы
Serhii
с асайном прикольнее
Artёm
Спасибо, я совершенно не учел что это асинхронный процесс
Andrey
Разве что наглядность, может быть
Serhii
нет
Serhii
если в фреймворке есть динамическая проверка данных
Serhii
выходит вместо того чтобы контролировать появление данных и присваивание потом в переменную для вывода
Serhii
можно сразу присвоить, так как асайн обновит ссылку, данные сразу схаваются чейндж детектором
Andrey
А, то есть, ты говоришь про момент, где мы сейчас парсим джсон. В случае, если там потребуется добавить логики - асайн круче, абсолютно согласен
Serhii
но минус в том, что нету точки когда можно узнать вне метода когда таки данные появились
Serhii
я как то перевел был один ленивый компонент на это, сразу пропали все пляски с промисами в компоненте, ему нужны данные - this.items = service.returnItems() и забыл. А когда появятся, чейндж детектор сам подхватит
hlomzik
Andrew
Serhii
Artёm
hlomzik
Не обджект.обсёрв же простихоспаде
Serhii
hlomzik
Дима
Artёm
Дима
Фигово тебе
Serhii
фигово ему
Gordey
Пошли разборки)