Size: a a a

Angular - русскоговорящее сообщество

2019 November 14

RK

Roman Kolesnikov in Angular - русскоговорящее сообщество
Виталий
Господа, а зачем использовать OnChanges если можно использовать сеттер свойства инпут биндинга?

https://stackblitz.com/edit/angular-input-binding-change
для меня удобство в одном месте описать логику
использую вместе с циклом of и SimpleChanges
в итоге получается меньше кода
источник

В

Виталий in Angular - русскоговорящее сообщество
Roman Kolesnikov
для меня удобство в одном месте описать логику
использую вместе с циклом of и SimpleChanges
в итоге получается меньше кода
Спасибо.
источник

L4

Leet 4 in Angular - русскоговорящее сообщество
Виталий
Господа, а зачем использовать OnChanges если можно использовать сеттер свойства инпут биндинга?

https://stackblitz.com/edit/angular-input-binding-change
Сеттеры/геттеры вообще, имхо, часто только запутывают. Вот в своем примере ты вызываешь сеттер свойства, которому дан декоратор ‘@Input()’, ну это же жесть.
источник

В

Виталий in Angular - русскоговорящее сообщество
почему жесть? не вижу никакой жести
источник

В

Виталий in Angular - русскоговорящее сообщество
декоратор на сеттере, в чём проблема?
источник

В

Виталий in Angular - русскоговорящее сообщество
вероятнее всего, действительно, это ваше «имхо»
источник

L4

Leet 4 in Angular - русскоговорящее сообщество
Виталий
почему жесть? не вижу никакой жести
Поому что этот декоратор говорит нам, что это данные, пришедшие снаружи.) Инпут же. Получается, что сеттер вызывается как родителем, при передаче нового значения, так и самим компонентом, при его изменении (вызов инкремент метода)
источник

L4

Leet 4 in Angular - русскоговорящее сообщество
Это ужас, по рукам бить за такое надо)
источник

RK

Roman Kolesnikov in Angular - русскоговорящее сообщество
Leet 4
Поому что этот декоратор говорит нам, что это данные, пришедшие снаружи.) Инпут же. Получается, что сеттер вызывается как родителем, при передаче нового значения, так и самим компонентом, при его изменении (вызов инкремент метода)
то есть по логике, данные получены в компоненте изменять нельзя (этим же самым компонентом)?
источник

В

Виталий in Angular - русскоговорящее сообщество
Leet 4
Поому что этот декоратор говорит нам, что это данные, пришедшие снаружи.) Инпут же. Получается, что сеттер вызывается как родителем, при передаче нового значения, так и самим компонентом, при его изменении (вызов инкремент метода)
А вы просто выше чат не читали) Мы тут обсуждали насколько это допустимо менять инпут биндинги из компонента. Я согласен что это плохая практика)
источник

L4

Leet 4 in Angular - русскоговорящее сообщество
Roman Kolesnikov
то есть по логике, данные получены в компоненте изменять нельзя (этим же самым компонентом)?
Нельзя менять значение свойства, на котором инпут. Его надо только читать. А если нужно изменить данные, то берешь, производишь вычисления (меняешь) и пишешь в другое место (не в свойство с инпут декоратором)
источник

L4

Leet 4 in Angular - русскоговорящее сообщество
Виталий
А вы просто выше чат не читали) Мы тут обсуждали насколько это допустимо менять инпут биндинги из компонента. Я согласен что это плохая практика)
Ну я только это и критиковал) а про то, что геттеры/сетиеры жопа - это да, имхо. Просто не вижу в них смысла. Если надо отследить изменение переменной - то нужна не переменная, а какой-нибудь subject. Если нужно вычислять свойство, то нужен не геттер, а метод.
источник

L4

Leet 4 in Angular - русскоговорящее сообщество
Уже путаюсь в терминах)
источник

RK

Roman Kolesnikov in Angular - русскоговорящее сообщество
Leet 4
Нельзя менять значение свойства, на котором инпут. Его надо только читать. А если нужно изменить данные, то берешь, производишь вычисления (меняешь) и пишешь в другое место (не в свойство с инпут декоратором)
если работать с примитивами, то можно изменять напрямую
источник

L4

Leet 4 in Angular - русскоговорящее сообщество
Roman Kolesnikov
если работать с примитивами, то можно изменять напрямую
Речь не об опасности мутировать по ссылке, а о том, что меняя такое свойство мы лишаем возможности наш компонент получить данные, которые изначально отдавал родитель компонента.
источник

RK

Roman Kolesnikov in Angular - русскоговорящее сообщество
Leet 4
Речь не об опасности мутировать по ссылке, а о том, что меняя такое свойство мы лишаем возможности наш компонент получить данные, которые изначально отдавал родитель компонента.
в этом контексте конечно +
источник

BS

Bakytzhan Shymkentbay in Angular - русскоговорящее сообщество
Angular хрень
источник

BS

Bakytzhan Shymkentbay in Angular - русскоговорящее сообщество
Кто со мной согласень?
источник

nt

nur tlek in Angular - русскоговорящее сообщество
Bakytzhan Shymkentbay
Angular хрень
shymkentte aitasin ol angimendi
источник

ND

Nicholas Durham in Angular - русскоговорящее сообщество
источник