Size: a a a

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

2020 May 04

MK

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

JV

Julia Valentinova in Angular - русскоговорящее сообщество
Markel Kalugin
В файле стилей компонента объявляете
@import ‘имя дочернего файла 1’
@import ‘имя дочернего файла 2’
Я это понимаю, я идеологически спрашиваю, просто обычно в проектах вижу по одному файлу на компонент
источник

AS

Anton Shvets in Angular - русскоговорящее сообщество
Galeups
Хочу реализовать компонент, который содержит в себе лейбл, инпут и подсветку и вывод валидации
чтобы сделать внутреннюю логику валидации CVA нужно реализовать Validator и запровайдить класс в самого себя в NG_VALIDATORS
источник

G

Galeups in Angular - русскоговорящее сообщество
Anton Shvets
чтобы сделать внутреннюю логику валидации CVA нужно реализовать Validator и запровайдить класс в самого себя в NG_VALIDATORS
ух, понял, спасибо. Думал будет проще ))
источник

G

Galeups in Angular - русскоговорящее сообщество
но инпут реализовал, сейчас попробую валидацию прикрутить
источник

MK

Markel Kalugin in Angular - русскоговорящее сообщество
Julia Valentinova
Я это понимаю, я идеологически спрашиваю, просто обычно в проектах вижу по одному файлу на компонент
Потому что никто не заморачивается, вообще-то в спеке core.d.ts написано:
export declare interface Component extends Directive {

/**
* One or more relative paths or absolute URLs for files containing CSS stylesheets to use
* in this component.
*/
styleUrls?: string[];
источник

AS

Anton Shvets in Angular - русскоговорящее сообщество
Galeups
ух, понял, спасибо. Думал будет проще ))
да вроде достаточно просто, один метод добавляешь по сути, который вызывается ангуляром при каждом изменении формконтрола.
источник

AS

Anton Shvets in Angular - русскоговорящее сообщество
Galeups
ух, понял, спасибо. Думал будет проще ))
фишка еще в том что валидаторы можно накладывать на контрол директивой, и твой CVA будет выполнять роль такой типа директивы, одной из, т.е. один из валидаторов контрола
источник

MK

Markel Kalugin in Angular - русскоговорящее сообщество
Julia Valentinova
Я это понимаю, я идеологически спрашиваю, просто обычно в проектах вижу по одному файлу на компонент
Можете обойтись без импортов, только побеспокойтесь о том, чтобы файлы объявленные styleUrls декоратора Component лежали в директории компонента, иначе начинается путаница.
источник

G

Galeups in Angular - русскоговорящее сообщество
Anton Shvets
фишка еще в том что валидаторы можно накладывать на контрол директивой, и твой CVA будет выполнять роль такой типа директивы, одной из, т.е. один из валидаторов контрола
т.е. можно отдельно насоздавать валидаторов с помощью NG_VALIDATORS и директивами их накладывать на мои кастомные инпуты?
пока это сложно понять )
источник

AS

Anton Shvets in Angular - русскоговорящее сообщество
Julia Valentinova
Всем привет! А в ангуляре подразумевается, что одному компоненту соответствует один файл стилей?  Типа если мне логически нужен второй, то нужно создавать новый компонент? Спасибо
а можете привести пример где вам логически нужен второй файл со стилями?
источник

AS

Anton Shvets in Angular - русскоговорящее сообщество
Galeups
т.е. можно отдельно насоздавать валидаторов с помощью NG_VALIDATORS и директивами их накладывать на мои кастомные инпуты?
пока это сложно понять )
да. не только на кастомные, на любые формконтролы. это даже не обязательно инпут
источник

JV

Julia Valentinova in Angular - русскоговорящее сообщество
Anton Shvets
а можете привести пример где вам логически нужен второй файл со стилями?
<div class="header__container">
 <div class="header__inner">
   <div class="person">
     <div class="person__name"></div>
     <div class="person__avatar"></div>
     </div>
   </div>
</div>

Хотелось бы person вынести
источник

AS

Anton Shvets in Angular - русскоговорящее сообщество
Julia Valentinova
<div class="header__container">
 <div class="header__inner">
   <div class="person">
     <div class="person__name"></div>
     <div class="person__avatar"></div>
     </div>
   </div>
</div>

Хотелось бы person вынести
скорее всего да, логично вынести в компонент заменив <div class="person"> на app-person
источник

AS

Anton Shvets in Angular - русскоговорящее сообщество
хотя выносить в компонент только из-за стилей идея возможно не такая уж удачная. Но как правило там и логика рядом.
источник

JV

Julia Valentinova in Angular - русскоговорящее сообщество
Anton Shvets
скорее всего да, логично вынести в компонент заменив <div class="person"> на app-person
просто кажется странным создавать отдельный компонент для этого
источник

JV

Julia Valentinova in Angular - русскоговорящее сообщество
излишнее дробление тоже же не хорошо
источник

JV

Julia Valentinova in Angular - русскоговорящее сообщество
сложно короче нужен лид
источник

НК

Назар Калитюк... in Angular - русскоговорящее сообщество
зачем вообще в ангуляре такий длинные классы и бэм, если есть инкапсуляция?
источник

JV

Julia Valentinova in Angular - русскоговорящее сообщество
Хороший вопрос. Так кто-нибудь пишет из присутствующих?
источник