Size: a a a

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

2021 May 27

BB

Bogdan Bida in Angular - русскоговорящее сообщество
Ну toYearMonthDateString откуда взялось? Оно где прописано?
источник

Д

Дара in Angular - русскоговорящее сообщество
declare global {
 interface Date{
   toYearMonthDateString(): string;
 }
}
Date.prototype.toYearMonthDateString = function(): string{
 var mm = this.getMonth() + 1;
 var dd = this.getDate();
 return [this.getFullYear(),
   (mm > 9 ? '' : '0') + mm,
   (dd > 9 ? '' : '0') + dd]
   .join('-');
}

Вот код. Выходит мы расширяем тип Date своим методом
Оно находится в src/
источник

BB

Bogdan Bida in Angular - русскоговорящее сообщество
Если вы пытались дополнить стандартный Date джс'а то так делать нельзя (ну не рекомендуется) лучше создать класс утилиту
источник

BB

Bogdan Bida in Angular - русскоговорящее сообщество
Вот, да, лучше вынести это отдельно от класса Date и использовать как метод утилиту
Ну я б лично так и делал
источник

AR

Albert Rie in Angular - русскоговорящее сообщество
Я пока побуду как теоретик на основе доки:

markAsTouched() - помечает себя и предков

https://angular.io/api/forms/AbstractControl#markastouched

markAllAsTouched() помечает себя и наследников

https://angular.io/api/forms/AbstractControl#markasuntouched
источник

L

Looch in Angular - русскоговорящее сообщество
так лучше не делать
источник

L

Looch in Angular - русскоговорящее сообщество
не стоит трогать прототипы системных апи
источник

L

Looch in Angular - русскоговорящее сообщество
манки патчинг это очень плохо
источник

BB

Bogdan Bida in Angular - русскоговорящее сообщество
Вот как это называется
источник

L

Looch in Angular - русскоговорящее сообщество
ага, есть такой термин https://en.wikipedia.org/wiki/Monkey_patch
источник

Д

Дара in Angular - русскоговорящее сообщество
а как лучше делать?
источник

L

Looch in Angular - русскоговорящее сообщество
тебе уже выше написали, через хэлпер какой-то или вообще взять либу для работы с датами типа date-fns
источник

L

Looch in Angular - русскоговорящее сообщество
там можно взять только одну нужную функцию и все
источник

Д

Дара in Angular - русскоговорящее сообщество
Ок. Я посмотрю эту библиотеку
источник

ТЖ

Тихон Жарких... in Angular - русскоговорящее сообщество
уже реализовано
нашел ошибочку - надо внутри controlValueAcessor получить парент контрол
и как только я его триггерну на родительской форме - я триггерну нужный мне контрол внутри кастомного
источник

IE

Igor' Ember in Angular - русскоговорящее сообщество
Я разделил компоненты по отдельным модулям, но меня все равно напрягает то, что в некоторых из них приходится импортировать CommonModule. Этот модуль явно не tree-shakable, когда мы его импортируем просто ради того, чтобы использовать ngIf директиву в отдельно взятом компоненте, мы же в нагрузку все остальное туда запихиваем (и так в каждый модуль каждого компонента).
Фигня какая-то.
источник

IE

Igor' Ember in Angular - русскоговорящее сообщество
Ну и тоже самое к routerModule, например
источник

ДМ

Денис Макаров... in Angular - русскоговорящее сообщество
роутер модуль у тебя в корень должен подключаться
источник

ДМ

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

IE

Igor' Ember in Angular - русскоговорящее сообщество
но как фичер модуль будет знать о том, что в app.module подключены нужные модулю? У меня в эпп модуль добавлено все, но vscode подсвечивает ошибку в модулях для компонентах, если в них явно не прописать те же импорты для commonModule/routerModule
источник