Size: a a a

Советский Angular

2019 December 06

DT

Dmitry Teplov in Советский Angular
там класс NewControlLinker
источник

Вキ

Вертихвост キバ in Советский Angular
Dmitry Teplov
там класс NewControlLinker
ну вот, согласись, лучше выглядит)
источник

Вキ

Вертихвост キバ in Советский Angular
можешь еще сделать

link(/*…*/): Function {
 //…
 return () => this.unlink(config.reference);
}
источник

DT

Dmitry Teplov in Советский Angular
Вертихвост キバ
ну вот, согласись, лучше выглядит)
да, неплохо
только вот не уверен, как поступать с тем что несколько раз подряд пишется значение
пока что добавил distinctUntilChanged
источник

Вキ

Вертихвост キバ in Советский Angular
Dmitry Teplov
да, неплохо
только вот не уверен, как поступать с тем что несколько раз подряд пишется значение
пока что добавил distinctUntilChanged
ну и оставь его
источник

Вキ

Вертихвост キバ in Советский Angular
Dmitry Teplov
да, неплохо
только вот не уверен, как поступать с тем что несколько раз подряд пишется значение
пока что добавил distinctUntilChanged
Только вот тут немного не так
источник

DT

Dmitry Teplov in Советский Angular
Вертихвост キバ
можешь еще сделать

link(/*…*/): Function {
 //…
 return () => this.unlink(config.reference);
}
чтобы без ссылки можно было отписаться?
источник

Вキ

Вертихвост キバ in Советский Angular
Я ожидал, что будет getValues: (source) => source.pipe(distinct…);
источник

Вキ

Вертихвост キバ in Советский Angular
так же и с set
источник

DT

Dmitry Teplov in Советский Angular
Вертихвост キバ
Я ожидал, что будет getValues: (source) => source.pipe(distinct…);
хм, а откуда линкер сорс возьмёт?
источник

Вキ

Вертихвост キバ in Советский Angular
Dmitry Teplov
хм, а откуда линкер сорс возьмёт?
this.animalStateService
источник

DT

Dmitry Teplov in Советский Angular
Вертихвост キバ
this.animalStateService
но ему тогда надо знать апи стейт сервиса
источник

Вキ

Вертихвост キバ in Советский Angular
Dmitry Teplov
но ему тогда надо знать апи стейт сервиса
this.linker.link({
     reference: this.animalStateService,
     getValues: (service) => service.state.pipe(distinctUntilChanged()),
     setValue: (service, value) => service.set(value)
});
источник

DT

Dmitry Teplov in Советский Angular
хм
а будет разница в целом?
сейчас референс как костыль немного для наличия ссылки просто
источник

Вキ

Вертихвост キバ in Советский Angular
конечно будет!
источник

Вキ

Вертихвост キバ in Советский Angular
у тебя более менее чистые функции получаются
источник

DT

Dmitry Teplov in Советский Angular
Вертихвост キバ
у тебя более менее чистые функции получаются
можно в одну фабрику с оверлоудами запихнуть создание конфига для линкера
источник

DT

Dmitry Teplov in Советский Angular
есчо
источник

Вキ

Вертихвост キバ in Советский Angular
можно, но я бы пока не стал так усложнять
источник

DT

Dmitry Teplov in Советский Angular
Вертихвост キバ
можно, но я бы пока не стал так усложнять
для контрола, соотв, будет:

this.linker.link({
 reference: this.control,
 getValues: (control) => control.valueChanges,
 setValue: (control, value) => control.patchValue(value, {emitEvent: false}),

}
источник