Size: a a a

Советский Angular

2021 February 26

ДМ

Денис Макаров... in Советский Angular
я как-то наткнулся на то, что в коде инпуты были readonly, и потом убирал, чтобы можно было нормально тестить
источник

С

Степан in Советский Angular
Денис Макаров
тесты не писали никогда?
а кто говорит о тестах? если в тестах мне нужно обратиться к свойству, а оно private естественно ide мне об этом скажет
источник

С

Степан in Советский Angular
я про конкретный кейс
источник

ДМ

Денис Макаров... in Советский Angular
Kir 🦋 JS
Поддерживаю Лиса в этом споре, если к свойству есть доступ снаружи, оно должно быть публично
+
источник

S

Shmalala in Советский Angular
Лайк! Вы повысили рейтинг пользователя Kir 🦋 JS.
Теперь его рейтинг: 16 ❤️
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
Степан
я таким образом закрываю доступ к переменной извне, никто не сможет получить данные из private свойства
То есть, помечая проперти как private, мы закрываем доступ к этому проперти из вне, но при этом мы навешиваем Input для того, чтобы писать в этот Input что-то из вне

Не находишь несостыковку в логической цепочке при использовании private на Input?
источник

ДМ

Денис Макаров... in Советский Angular
помню в jit можно было дергать приватные поля из шаблона, а потом мы проект перенесли на aot и обожглись)
источник

K🦋

Kir 🦋 JS in Советский Angular
Вертихвост キバ 🏡🦊
То есть, помечая проперти как private, мы закрываем доступ к этому проперти из вне, но при этом мы навешиваем Input для того, чтобы писать в этот Input что-то из вне

Не находишь несостыковку в логической цепочке при использовании private на Input?
Ну я в целом понимаю такое соглашение, но мне кажется это как импользовать недокументированные фичи.
Да, выполняет задачу, но может в любой момент сломаться, и надо объяснять всем новичкам.
На небольших проектах можно юзать наверное.
источник

K🦋

Kir 🦋 JS in Советский Angular
Да и профита с этого не так много, чтобы заморачиваться кмк
источник

ДМ

Денис Макаров... in Советский Angular
Kir 🦋 JS
Да и профита с этого не так много, чтобы заморачиваться кмк
+
источник

S

Shmalala in Советский Angular
Лайк! Вы повысили рейтинг пользователя Kir 🦋 JS.
Теперь его рейтинг: 17 ❤️
источник

С

Степан in Советский Angular
Вертихвост キバ 🏡🦊
То есть, помечая проперти как private, мы закрываем доступ к этому проперти из вне, но при этом мы навешиваем Input для того, чтобы писать в этот Input что-то из вне

Не находишь несостыковку в логической цепочке при использовании private на Input?
да есть такое... не спорю, но вот например подключение сервисов в конструкторе, тоже получается public всегда писать надо?
источник

С

Степан in Советский Angular
и никаких constructor(private myService: MyService)
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
Степан
да есть такое... не спорю, но вот например подключение сервисов в конструкторе, тоже получается public всегда писать надо?
имеешь ввиду, когда пишем constructor(private service: Service)?
источник

С

Степан in Советский Angular
Вертихвост キバ 🏡🦊
имеешь ввиду, когда пишем constructor(private service: Service)?
ага
источник

K🦋

Kir 🦋 JS in Советский Angular
Степан
и никаких constructor(private myService: MyService)
Почему? Эти свойста не записываются снаружи
источник

K🦋

Kir 🦋 JS in Советский Angular
Они передаются при вызове конструктора
источник

С

Степан in Советский Angular
Kir 🦋 JS
Они передаются при вызове конструктора
ну ведь тоже извне
источник

Вキ

Вертихвост キバ 🏡🦊... in Советский Angular
Степан
ага
тут private имеет смысл, так как фактически это алиас для быстрой записи значений из конструктора в проперти
источник

K🦋

Kir 🦋 JS in Советский Angular
Степан
ну ведь тоже извне
Да, но само свойство которое обозначается как приватное записывается внутри компонента, используя переданный параметр
источник