Size: a a a

JavaScript.Ninja

2021 July 05

AV

A V in JavaScript.Ninja
Я кажется вспомнил, что это. Вот
https://www.eventstore.com/
источник

Y

Yevhen in JavaScript.Ninja
Не совсем понятно в чем их фишка. Пишут "This contrasts with state-oriented persistence that only keeps the latest version of the entity state; when changes occur in "traditional" database systems, the state is updated and the history, along with the reason for the change, is lost."

Но ведь это не так. Смотрите мой ответ выше.
Да, transaction log предназначен для восстановления консистентного состояния данных, но ведь это же и есть "история" изменений.

Похоже, что они сделали версионирование данных, если я правильно понял.
источник

AV

A V in JavaScript.Ninja
"Похоже, что они сделали версионирование данных, если я правильно понял."
Да, все так и есть
источник
2021 July 06

II

IIII IIII in JavaScript.Ninja
Уже спрашивал, но не получил ответа, попробую ещё раз)
Где найти список доступных в vue анимаций с transition?
источник

ДБ

Дмитрий Берестовский... in JavaScript.Ninja
Помогите, пожалуйста, решить такую проблему:

NestJS

Есть модуль, помеченный аннотацией @Global(). Соответственно, т.к. он заимпорчен в корневом модуле, то в остальных для использовения сервиса, который он экспортирует, его уже импортить или провайдить этот сервис не нужно.

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

А проблема такая: нужно его (сервис из этого модуля) замокать в тестах одного из модулей приложения, но это не получается, похоже из-за этой аннотации и поведения. Можно ли это как-то победить без внесения изменений во всё (т.к. убрав глобал придётся многое фиксить в разных модулях)?
источник

AV

A V in JavaScript.Ninja
Добрый день.
Ставил ли кто-то ng-zorro-antd на Ангуляр 12?
Они пишут, что у них уже есть поддержка 12-й версии (и даже буквально пару дней назад у Соера было видео, где он ставил этот антд на 12-й Ангуляр), но у меня все равно ошибка:
https://github.com/NG-ZORRO/ng-zorro-antd/issues/6731 (последний комментарий)
источник

DN

Dmitriy Nikolaev in JavaScript.Ninja
пройдись рекурсией
источник

YK

Yurii Kovalenko in JavaScript.Ninja
class-transformer
источник

AS

Andrey Saenko in JavaScript.Ninja
Всем привет подскажите что значит эта запись
https://codesandbox.io/s/xenodochial-mahavira-nzuqd
источник

IK

Illya Klymov in JavaScript.Ninja
Что свойства может не быть
источник

KR

Kirill Romanov in JavaScript.Ninja
свойство может отсутствовать или быть undefined
источник

AS

Andrey Saenko in JavaScript.Ninja
типа если className буде отсутствовать typeScript не будет алармить?
источник

KR

Kirill Romanov in JavaScript.Ninja
но в тайпскрипт 4.4 появится флаг, по которому ? в этом месте будет означать только возможность отсутствия свойства (то есть либо его нет, либо оно есть и не undefined)
источник

AS

Andrey Saenko in JavaScript.Ninja
Спасибо
источник

Q

Qwerty in JavaScript.Ninja
а vue - все?
источник

DP

Dmytro Petunenko in JavaScript.Ninja
Вопрос по реакту
Есть кейс, нужно грузить в бекграунде компонента данные и обновлять в редьюсере (реактовском)
И еще там есть фей таймер на 4с, что бы показать что система "работает"
Визуальных изменений нет, только фетч и фейк таймер
Вопрос, как протестировать что диспатч был (его мокнуть я могу), библиотека jest

useEffect(() => {
   const fetchData = async () => {
     return await fetch('...');
   };

   (async () => {
     const [data] = await Promise.all([
       fetchData(),
       new Promise((resolve) => setTimeout(resolve, 4000)),
     ]);

     dispatch({ type: 'ACTION', payload: data });
   })();
 
}, []);
источник

IK

Illya Klymov in JavaScript.Ninja
Установить фейковые таймеры в жесте, увести время вперед на 4 секунды, проверить что диспатч вызван
источник

DP

Dmytro Petunenko in JavaScript.Ninja
Да вроде делаю так но по консол логам выходит что дальше await Promise.all он не уходит и говорит что например если вызывать консол лог после этого то попытка вызвать после теста
Надо добавить что сервер у нас мокается глобально через msw
источник

DP

Dmytro Petunenko in JavaScript.Ninja
Проблема найдена, не резолвится мок сервер по какой то причине, но это уже другая история
Благодарю за ответ
источник

ДБ

Дмитрий Берестовский... in JavaScript.Ninja
Кстати, проблема с моканьем оказалась в том, что часть логики приложения запихнули в bootstrap-функцию в стартовом файле, и там вытягивали этот ConfigService. Получалось, что туда попадал незамоканный сервис и падал, а до тестового модуля и моканья не доходило, крашилось раньше. Пришлось подпереть костылём это дело (сделать для тестовой среды заглушку на валидацию Joi,  которая падала), и только тогда в тесте сервис мокнулся и всё пошло как надо.

Но у меня вопрос: а можно ли было без костыля такое победить? Можно ли как-то на том этапе было замокать его? И почему jest запускает нестовскую функцию bootstrap, если я тестирую не всё приложение, а только один сервис (даже когда я его бытался создать не через инжект, а через new). Ведь для юнитов нужно протестить только конкретный кусок независимо от остальных модулей, для чего и делаем моки собственно... Можно ли это победить как-то?
источник