SII
но а как по другому сделать правильно, я хз
SII
видимо какой-то другой механизм используют
Evgeny
но а как по другому сделать правильно, я хз
Обычно ajax данные нужны более локально.... скажем загружаешь список постов и из хендлера их передаешь функцие которая обновит их на странице и все. в глобольные переменные данные не помещают.
SII
ну точно
SII
я пому объеденить логигу других модулей в 1 и использовать
SII
могу*
SII
в конкретном модуле вызывать ajax и использовать
Evgeny
Честно не понял о чем ты) но твой пример глобальный так что его можно использовать во всех скриптах загруженых после него.
Ostap
Подскажите, где можно найти реализацию сборщика БЭМ-блоков
Evgeny
SII
Делаю учебный проект, при нажатии на определенную метку , должна выводится карточка с данными. В render-card есть функция которая принимает объект и разбирает его данные, формируя карточку, а show-card показывает карточку
SII
Felix
А что наставники говорят? :D
Evgeny
Evgeny
хотя вообще лучше хоят бы обьеденить
SII
Evgeny
Felix
Evgeny
Ostap
Evgeny
Ну в нем вроде более менее понятно) хотя вот таска html с первой строки настораживает))
Andrey
про авэйт и порядо я имел в виду другое. одна девочка в видео говорит, что можно (нужно) сначала определить 2 переменные - фетча, а потом их обе авэйтить, а не наоборот. и что в этом случае запросы как раз будут выполняться параллельно безо всяких Промис.алл, несмотря на то, что выше товарищи утверждали, что параллельные запросы никак асинками не реализуешь.
а насчет удобства - у меня не жс, мне все равно в интероп придется лезть и обертки писать, и я написал удобные обертки над промисами - ада не чувствую
Roman
не будет так работать все равно
Roman
а хотя может и будет
Andrey
у меня нет причин не доверять девочке )
Roman
ну это некрасиво как-то выглядит
Andrey
хотя сам не проверял )
Roman
да согласен, работать будет
Evgeny
про авэйт и порядо я имел в виду другое. одна девочка в видео говорит, что можно (нужно) сначала определить 2 переменные - фетча, а потом их обе авэйтить, а не наоборот. и что в этом случае запросы как раз будут выполняться параллельно безо всяких Промис.алл, несмотря на то, что выше товарищи утверждали, что параллельные запросы никак асинками не реализуешь.
а насчет удобства - у меня не жс, мне все равно в интероп придется лезть и обертки писать, и я написал удобные обертки над промисами - ада не чувствую
Не уверен что правльно понял суть но :
тут вот в чем дело, так как асинхронная функция по сути просто функция возвращающая Promise если результат запросов не важен можно просто вызвать обе функции акак
asyncFunction();
asyncFunction();
И запросы пойдут паралельно но извлечь результаты увы нельзя. а вот в случае
await Promize.All([asyncFunction(), asyncFunction()]);
результатом будет массив с данынми)
Andrey
видео на 3 минуты всего, что делается с извлеченными данными показано на последнем скрине кода https://www.youtube.com/watch?v=fyXwqtynKpA
Roman
Roman
я думаю как-то так
Roman
пока ждет первый await - второй запрос тоже идет
Andrey
(это не Хуан ли Миро на майке? )))
Andrey
до того как увидел его картины думал, что не понимаю живопись )
Roman
та да, мне тоже не нравится такая запись
Roman
нужен синтаксис типа awaitAll
Roman
и awaitAny
Andrey
вот именно эта ненаглядность мне и не нравится помимо всего прочего, поэтому сижу на промисах )
Evgeny
) а вот как то меня жизнь миловала я ток помню раза 2 использовал Promize.all хоят тут нужно для верости сказать что немного разное поведенгие
Roman
на самом деле независимых запросов не так и много
Andrey
я использую в 95% случаев Промис.олл
Andrey
но вы наверное не догадаетесь зачем )
Evgeny
Andrey
чтобы протащить все ответы до конца последнего запроса
Evgeny
ну так я и имел в виду это ) собственно для этого и продумана эта функция....
Andrey
не, это ее побочный эффект ) придумана она чтобы действительно параллелить промисы, а я тащу синхронные значения используя ее
Evgeny
Andrey
правильно. но я сую в нее 1 промис и 10 не промисов
Evgeny
Тогда это максимально странно))
Andrey
поэтому и говорю что не догадаетесь )
Andrey
в жс - да, странно
Evgeny
вообще от обычнх просмиов без await меня отбил проект .... из за обработки ошибок на кажом уровне код выглядел ужасно
Andrey
может он был просто неоптимально и неудобно написан?
Evgeny
да нет .... как раз таки оптимально просто на разно уровне ошибка должна быть своя.... и соотвственно логирвоние должно просиходить соответствующе..... грубо говоря если в auth сервисе упала у тебя 500 ошибка при запросе.... то на самый верх должно выпасть исключениее уже прошедщее 3-4 блока кэтч.... и с номальной понятной ошибкой
Andrew
А можно переменной сразу как-то присвоить результат запроса, если json: true определено?
Evgeny
ты имеешь в виду деструктуризацию? типо
const { body } = await request({....
Evgeny
ну в место body поставь имя проперти в которую ложиьтся тело респонса
Andrew
{"method":"access_token","timestamp":1537299993,"success":{"response":{"access_token":"c739b1504f186accec642e834ff02d7a6db0a18d"}}}
вот такое приходит, хочу сразу чтобы токен был переменной присвоен, как при работе с json
Andrew
если дописать
success.response.access_token
то не работает
Andrew
🤔
Evgeny
Andrew
Evgeny
если да то у тебя пришла строка...
Evgeny
и request не распарсил ее
Andrew
Evgeny
сделай typeof
Evgeny
тут да
Evgeny
просто ты прислал код с ""
Evgeny
а так обычно когда она не распаршена)