SII
но а как по другому сделать правильно, я хз
SII
видимо какой-то другой механизм используют
Evgeny
но а как по другому сделать правильно, я хз
Обычно ajax данные нужны более локально.... скажем загружаешь список постов и из хендлера их передаешь функцие которая обновит их на странице и все. в глобольные переменные данные не помещают.
SII
ну точно
SII
я пому объеденить логигу других модулей в 1 и использовать
SII
могу*
SII
в конкретном модуле вызывать ajax и использовать
Evgeny
Честно не понял о чем ты) но твой пример глобальный так что его можно использовать во всех скриптах загруженых после него.
Ostap
Подскажите, где можно найти реализацию сборщика БЭМ-блоков
SII
Честно не понял о чем ты) но твой пример глобальный так что его можно использовать во всех скриптах загруженых после него.
у меня есть 2 модуля show-card и render-card , я их могу объединить в 1 например card просто и использовать их функции через onLoad. Просто если использовать его в 2 модулях, то и запрос данных одних и тех же будет запрашиваться 2раза.
Evgeny
Подскажите, где можно найти реализацию сборщика БЭМ-блоков
В беме особо не силен, но разве не достаточно просто лоадера для webpack скажем?
Ostap
В беме особо не силен, но разве не достаточно просто лоадера для webpack скажем?
Юзаю gulp, но не суть. Мне нужно просто посмотреть код скрипта компоновки. Штука примитивная, но не могу найти примеры кода.
SII
Делаю учебный проект, при нажатии на определенную метку , должна выводится карточка с данными. В render-card есть функция которая принимает объект и разбирает его данные, формируя карточку, а show-card показывает карточку
SII
Evgeny
Юзаю gulp, но не суть. Мне нужно просто посмотреть код скрипта компоновки. Штука примитивная, но не могу найти примеры кода.
О галп) а то его тут обижают)) Не очень понял) просто вбрашеь рандомный плагин для бем и смотришь примеры....... там только БЕМ чисто по стилям или с JS вместе?
Felix
А что наставники говорят? :D
Evgeny
хотя вообще лучше хоят бы обьеденить
SII
Ну и в чем тогда проблема? подвязываешься на click делаешь запрос и в callBack передаешь данные в первую или вторую функцию)
Теперь я вижу несколько вариантов как можно решить, просто практики не хватает. А весь код, что писал привел меня к тому, что нужно засунуть данные в глобальную переменную и уже ее передавать ее в другие модули.
Ostap
О галп) а то его тут обижают)) Не очень понял) просто вбрашеь рандомный плагин для бем и смотришь примеры....... там только БЕМ чисто по стилям или с JS вместе?
Gulp справляется с поставленными перед ним задачами) Рандомный плагин еще нужно найти, я думал, может тут у кого нибудь есть. БЭМ естественно по верстке, стилям и js
SII
А что наставники говорят? :D
на интенсив не записывался, сам делаю по лекциям в записи
Felix
на интенсив не записывался, сам делаю по лекциям в записи
Тот жс, который я видел у них немного форсированный, да)
Evgeny
Felix
Ostap
Ну конекретный плагин не могу подсказать ищи каки то стартеры или https://github.com/iamstarkov/gulp-bem-stub или вот хотя бы
Конкретный и не нужен, все равно буду переписывать под свои задачи. За ссылку спасибо, пошел разбирать)
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
пока ждет первый await - второй запрос тоже идет
Andrey
(это не Хуан ли Миро на майке? )))
Andrey
до того как увидел его картины думал, что не понимаю живопись )
Roman
(это не Хуан ли Миро на майке? )))
возможно, майка из Мадрида. может просто под стиль
Evgeny
const a = fetch() const b = fetch() const res1 = await a const res2 = await b
ну в принципе так да.... так может вполняться. просто это как то не совсем наглядно может быть. И такое лучше явно указвать
Roman
та да, мне тоже не нравится такая запись
Roman
нужен синтаксис типа awaitAll
Roman
и awaitAny
Andrey
вот именно эта ненаглядность мне и не нравится помимо всего прочего, поэтому сижу на промисах )
Evgeny
) а вот как то меня жизнь миловала я ток помню раза 2 использовал Promize.all хоят тут нужно для верости сказать что немного разное поведенгие
Roman
на самом деле независимых запросов не так и много
Andrey
я использую в 95% случаев Промис.олл
Andrey
но вы наверное не догадаетесь зачем )
Evgeny
но вы наверное не догадаетесь зачем )
что бы собрать в масив ответы?
Andrey
чтобы протащить все ответы до конца последнего запроса
Evgeny
ну так я и имел в виду это ) собственно для этого и продумана эта функция....
Andrey
не, это ее побочный эффект ) придумана она чтобы действительно параллелить промисы, а я тащу синхронные значения используя ее
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
если да то у тебя пришла строка...
Evgeny
и request не распарсил ее
Andrew
Мне кажется она парсится
Evgeny
сделай typeof
Evgeny
тут да
Evgeny
просто ты прислал код с ""
Evgeny
а так обычно когда она не распаршена)