Size: a a a

2020 January 31

AS

Alex S in Angular Kyiv
Danil Gudz
это как?)
это “yaaaz” (yes)
источник

BH

Bogdan Harasyk in Angular Kyiv
источник

DG

Danil Gudz in Angular Kyiv
Bogdan Harasyk
так а что не меняется? свойство text по ходу редактировании текстэриа?
источник

BH

Bogdan Harasyk in Angular Kyiv
Danil Gudz
так а что не меняется? свойство text по ходу редактировании текстэриа?
так
источник

DG

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

DG

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

AS

Alex S in Angular Kyiv
Danil Gudz
можешь плиз оборазно накидать твой код с этими операторами
@Effect()
onSmth = this.actions$.pipe(
 ofType(ActionTypes.setSmth),
 withLatestFrom(this.tool.getActiveMode()), // A or B
 map(([action, mode]) => mode),
 distinctUntilChanged(),
 map(() => new DoSmth())
);


resetState делается как в редюсере
initialState = {…defaultState}
в этом стейте стоит по умолчанию “режим A”
я ставлю режим В
делаю reset state. Соответственно, устанавливается на дефолт снова “режим А”
далее делаю еще раз эффект тот, ставя режим В
map(() => new DoSmth()) не сработает, т.к. distinctUntilChanged() не пропустит, ведь он помнит, что в последний раз он выставлял режим В, и сейчас ему тоже прилетает режим В
источник

BH

Bogdan Harasyk in Angular Kyiv
Danil Gudz
поэтому я и прошу кинуть кейс где можно было бы баг зарепродьюсить
зараз спробую
источник

DG

Danil Gudz in Angular Kyiv
Alex S
@Effect()
onSmth = this.actions$.pipe(
 ofType(ActionTypes.setSmth),
 withLatestFrom(this.tool.getActiveMode()), // A or B
 map(([action, mode]) => mode),
 distinctUntilChanged(),
 map(() => new DoSmth())
);


resetState делается как в редюсере
initialState = {…defaultState}
в этом стейте стоит по умолчанию “режим A”
я ставлю режим В
делаю reset state. Соответственно, устанавливается на дефолт снова “режим А”
далее делаю еще раз эффект тот, ставя режим В
map(() => new DoSmth()) не сработает, т.к. distinctUntilChanged() не пропустит, ведь он помнит, что в последний раз он выставлял режим В, и сейчас ему тоже прилетает режим В
довольно странно, т.к. distinctUntilChanged по идее ж не должен так сработать ибо после ресета ж А должно заэмититься
источник

DG

Danil Gudz in Angular Kyiv
getActiveMode на ресете не эмитит значение?
источник

AS

Alex S in Angular Kyiv
reset выгдядит примерно
case …resetState: 
return {
  …defaultState
}
источник

AS

Alex S in Angular Kyiv
редюсер
источник

DG

Danil Gudz in Angular Kyiv
ну, я понял тут, а getActiveMode не подхватывает А после ресета?
источник

AS

Alex S in Angular Kyiv
подхватывает
источник

AS

Alex S in Angular Kyiv
он всё видит как надо
источник

DG

Danil Gudz in Angular Kyiv
так потом после А ж когда ставишь Б дистинкт то должен пропустить дальше Б
источник

AS

Alex S in Angular Kyiv
но пайп запускался последний раз с данными В
потом я его еще раз запускаю с данными В
а то, что между этими 2мя действиями поизошёл некий reset, то он не знает
источник

AS

Alex S in Angular Kyiv
да, withLatestFrom вернёт А (который уже появился благодаря reset’y)
источник

BH

Bogdan Harasyk in Angular Kyiv
источник

DG

Danil Gudz in Angular Kyiv
https://stackblitz.com/edit/angular-faqcg7
а что не работает то?
источник