Size: a a a

2020 July 29

А

Анатолий in Angular Kyiv
Спасибо, но по сути это тоже самое, т.к.
Event это объект
{
       event: MouseEvent;
       active: {}[];
}
где event.event = null
источник
2020 July 30

B

Bohdan in Angular Kyiv
Всем привет, вопрос об ngrx, нужно ли ставить dispatch: false
в таком случае
checkEmailDomain$ = this.actions$.pipe(
   ofType<actions.LoginCheckEmailDomain>(actions.ActionTypes.LOGIN_CHECK_EMAIL_DOMAIN),
   map(action => action.payload),
   exhaustMap(email => {
     const connection = ssoConnections.getConnection(email);
     if (connection) {
       this.auth0Service.login(connection);

       return [];
     }

     return [new actions.LoginShowPassword()];
   }),
 );
источник

DG

Danil Gudz in Angular Kyiv
Bohdan
Всем привет, вопрос об ngrx, нужно ли ставить dispatch: false
в таком случае
checkEmailDomain$ = this.actions$.pipe(
   ofType<actions.LoginCheckEmailDomain>(actions.ActionTypes.LOGIN_CHECK_EMAIL_DOMAIN),
   map(action => action.payload),
   exhaustMap(email => {
     const connection = ssoConnections.getConnection(email);
     if (connection) {
       this.auth0Service.login(connection);

       return [];
     }

     return [new actions.LoginShowPassword()];
   }),
 );
его нужно ставить фолс когда ты не хочешь чтоб то что возвращается из обзервебла задиспатчилось
источник

B

Bohdan in Angular Kyiv
Danil Gudz
его нужно ставить фолс когда ты не хочешь чтоб то что возвращается из обзервебла задиспатчилось
а это норм, что у меня или возвращает екшен или пустой массив. Это смущает всегда вроде как екшен должен быть
источник

DG

Danil Gudz in Angular Kyiv
Bohdan
а это норм, что у меня или возвращает екшен или пустой массив. Это смущает всегда вроде как екшен должен быть
Делай фильтр
источник

DG

Danil Gudz in Angular Kyiv
эм, а exhaustMap норм работает если возвращаешь не обзервебл?
источник

B

Bohdan in Angular Kyiv
Danil Gudz
Делай фильтр
но фильтр не подходит сюда
источник

DG

Danil Gudz in Angular Kyiv
как это
источник

B

Bohdan in Angular Kyiv
Danil Gudz
как это
aaa
в таким ввиде

checkEmailDomain$ = this.actions$.pipe(
   ofType<actions.LoginCheckEmailDomain>(actions.ActionTypes.LOGIN_CHECK_EMAIL_DOMAIN),
   map(action => action.payload),
   map(email => {
     const connection = ssoConnections.getConnection(email);
     if (connection) {
       this.auth0Service.login(connection);

       return false;
     }
     
     return true;
   }),
   filter(v => !!v),
   exhaustMap(() => {
     return [new actions.LoginShowPassword()];
   }),
 );
источник

DG

Danil Gudz in Angular Kyiv
Bohdan
aaa
в таким ввиде

checkEmailDomain$ = this.actions$.pipe(
   ofType<actions.LoginCheckEmailDomain>(actions.ActionTypes.LOGIN_CHECK_EMAIL_DOMAIN),
   map(action => action.payload),
   map(email => {
     const connection = ssoConnections.getConnection(email);
     if (connection) {
       this.auth0Service.login(connection);

       return false;
     }
     
     return true;
   }),
   filter(v => !!v),
   exhaustMap(() => {
     return [new actions.LoginShowPassword()];
   }),
 );
так и не понял что тут делает exhaustMap...



checkEmailDomain$ = this.actions$.pipe(
   ofType<actions.LoginCheckEmailDomain>(actions.ActionTypes.LOGIN_CHECK_EMAIL_DOMAIN),
   map(action => action.payload),
   filter(email => {
     const connection = ssoConnections.getConnection(email);
     if (connection) {
       this.auth0Service.login(connection);

       return false;
     }
     
     return true;
   }),
   mapTo(new actions.LoginShowPassword())
 );
источник
2020 July 31

DG

Danil Gudz in Angular Kyiv
Хай олл, кто-то встречал чтоб ngOnChanges откидывал свойство у которого currentValue === previousValue ? интересно чего так
источник

M

Malikov in Angular Kyiv
откидывает - т.е. не выполняется ngOnChanges?
источник

M

Malikov in Angular Kyiv
если ты не про примитивы, то значит ссылка на память не поменялась, а значит, по-моему, ngOnChanges и не должен выполняться
источник

G

George in Angular Kyiv
так оно же не изменилось )))
источник

J

Jack in Angular Kyiv
Ну логічно вроді якщо значення не змінилось то і onChanges ігнорить)
источник

DG

Danil Gudz in Angular Kyiv
допустим есть OnPush компонент с кодом
@Input() data;

ngOnChanges(changes: SimpleChanges) {
 console.log(changes && changes.data.currentValue === changes.data.previousValue);
}
источник

DG

Danil Gudz in Angular Kyiv
так вот бывает что пишет true в консоль, так сказать)
вопрос - это разве норм? я думал суть ngOnChanges в том что он только измененные значения кидает) может кто встречал такую ситуацияю, понятно что этот пример это не воспроизведет, может какой-то detectChanges или еще че-то на это влияет хз
если вдруг кто-то что-то знает или встречал такую ситуацию - скажите плз)
источник

RM

Roman Martyniuk in Angular Kyiv
есть вариант на инициализации компонента, когда у тебя previousValue - null
а в переменной data - ты так же прокинул null значение
вот они и равны
источник

IK

Igor Kurkov in Angular Kyiv
Danil Gudz
так вот бывает что пишет true в консоль, так сказать)
вопрос - это разве норм? я думал суть ngOnChanges в том что он только измененные значения кидает) может кто встречал такую ситуацияю, понятно что этот пример это не воспроизведет, может какой-то detectChanges или еще че-то на это влияет хз
если вдруг кто-то что-то знает или встречал такую ситуацию - скажите плз)
Не знаю насколько это будет кошерно в этом случае, но возможно проще сделать просто @Input() set data(val: ISomedata) { this._data = val; } и тогда он будет файриться на любое изменение и перестанет чтолибо сравнивать) а там уже distinctUntilChanged по-своему можно повесить как необходимо.
А то ngOnChanges не всегда решают вопрос особенно на onPush
источник

DG

Danil Gudz in Angular Kyiv
Просто ngOnChanges задумывался чтоб сделать чето если поменялся инпут, а тут прикол конечно вышел, задачу то я свою решит, просто интересно вдруг кто встречал когда-то такое может знает в чем трабла, ладн, спасибо за мысли
источник