Size: a a a

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

2021 February 24

I

Ilja in Angular - русскоговорящее сообщество
Богдан
Господа, а не подскажите наколько сейчас православно юзать ngRx? Я как бы ранее на vue писал, а теперь приходится на angular?
я тебе так скажу. есть вероотступники на сервисах делают . их конечно мы ненавидим ибо как сказано в святом писании ."да убей врага своего.  если надо взорви кресло его . ибо после него придут гончии чёрного рефакторинга"  и пользуйся оф документацией . ибо многие братья полегли на почве стековерфлоу и видакурсав . ибо уверовали они  не в святое писание а в еретиков . оно конечно может и можно почитать ИХНИЕ папирусы да бересты . но мы верим только тому что присвятой BLMgoogle написал .  вообщем брат . Да прибдет с тобой сила экшенов и да будешь ты своим мечом диспачить . и всё с тобой будет хоршо. и не забывай обновляться брат . 9-10 -11 каждые пол года ходи на святое омовение обновлением .
источник

Б

Богдан in Angular - русскоговорящее сообщество
switch немного не подойдет если уловие сложное например
    if (['лкЧерновик', 'лкПереданоВРаботу'].includes(statusStaticName)) {
     onlinePayment.label = 'paymentIsNotAvailable';
   } else if (paymentMethodRef === 'NonCash') {
     onlinePayment.label = 'unusable'
   } else if (sumToPay === 0) {
     onlinePayment.label = 'paidUp';
   } else {
     onlinePayment.status = true;
   }    if (['лкЧерновик', 'лкПереданоВРаботу'].includes(statusStaticName)) {
     onlinePayment.label = 'paymentIsNotAvailable';
   } else if (paymentMethodRef === 'NonCash') {
     onlinePayment.label = 'unusable'
   } else if (sumToPay === 0) {
     onlinePayment.label = 'paidUp';
   } else {
     onlinePayment.status = true;
   }
такое в свитч не пиханеш. Поэтому пришлось в компоненте уже вычислить условие и прокидывать в темплейт
источник

MA

Maxim Afanasev in Angular - русскоговорящее сообщество
Богдан
switch немного не подойдет если уловие сложное например
    if (['лкЧерновик', 'лкПереданоВРаботу'].includes(statusStaticName)) {
     onlinePayment.label = 'paymentIsNotAvailable';
   } else if (paymentMethodRef === 'NonCash') {
     onlinePayment.label = 'unusable'
   } else if (sumToPay === 0) {
     onlinePayment.label = 'paidUp';
   } else {
     onlinePayment.status = true;
   }    if (['лкЧерновик', 'лкПереданоВРаботу'].includes(statusStaticName)) {
     onlinePayment.label = 'paymentIsNotAvailable';
   } else if (paymentMethodRef === 'NonCash') {
     onlinePayment.label = 'unusable'
   } else if (sumToPay === 0) {
     onlinePayment.label = 'paidUp';
   } else {
     onlinePayment.status = true;
   }
такое в свитч не пиханеш. Поэтому пришлось в компоненте уже вычислить условие и прокидывать в темплейт
Напиши директиву под это 🤷‍♂️
источник

Б

Богдан in Angular - русскоговорящее сообщество
Ilja
я тебе так скажу. есть вероотступники на сервисах делают . их конечно мы ненавидим ибо как сказано в святом писании ."да убей врага своего.  если надо взорви кресло его . ибо после него придут гончии чёрного рефакторинга"  и пользуйся оф документацией . ибо многие братья полегли на почве стековерфлоу и видакурсав . ибо уверовали они  не в святое писание а в еретиков . оно конечно может и можно почитать ИХНИЕ папирусы да бересты . но мы верим только тому что присвятой BLMgoogle написал .  вообщем брат . Да прибдет с тобой сила экшенов и да будешь ты своим мечом диспачить . и всё с тобой будет хоршо. и не забывай обновляться брат . 9-10 -11 каждые пол года ходи на святое омовение обновлением .
Ну так в доках вроде на сервисах предлагают?
источник

MA

Maxim Afanasev in Angular - русскоговорящее сообщество
Богдан
switch немного не подойдет если уловие сложное например
    if (['лкЧерновик', 'лкПереданоВРаботу'].includes(statusStaticName)) {
     onlinePayment.label = 'paymentIsNotAvailable';
   } else if (paymentMethodRef === 'NonCash') {
     onlinePayment.label = 'unusable'
   } else if (sumToPay === 0) {
     onlinePayment.label = 'paidUp';
   } else {
     onlinePayment.status = true;
   }    if (['лкЧерновик', 'лкПереданоВРаботу'].includes(statusStaticName)) {
     onlinePayment.label = 'paymentIsNotAvailable';
   } else if (paymentMethodRef === 'NonCash') {
     onlinePayment.label = 'unusable'
   } else if (sumToPay === 0) {
     onlinePayment.label = 'paidUp';
   } else {
     onlinePayment.status = true;
   }
такое в свитч не пиханеш. Поэтому пришлось в компоненте уже вычислить условие и прокидывать в темплейт
Вообще, это больше похоже на маппер какой-то, это скорее бизнес-логика и ей нечего в компоненте делать.
источник

Б

Богдан in Angular - русскоговорящее сообщество
Maxim Afanasev
Вообще, это больше похоже на маппер какой-то, это скорее бизнес-логика и ей нечего в компоненте делать.
а куда пихать этот маппер в сервис?
источник

MA

Maxim Afanasev in Angular - русскоговорящее сообщество
Богдан
а куда пихать этот маппер в сервис?
Да
источник

Б

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

I

Ilja in Angular - русскоговорящее сообщество
Богдан
Ну так в доках вроде на сервисах предлагают?
то они не првильно читали с конца в начало . а когда батюшка ngRxпришёл поняли . но переписывать не стали  .
источник

MA

Maxim Afanasev in Angular - русскоговорящее сообщество
Богдан
а куда пихать этот маппер в сервис?
Вообще, с сервисами как термином есть проблема. Ангуляровские сервисы - это просто синглтоны, которые создаются ангуляровским DI. Поэтому всё, что не компонент, директива или пайп - это сервис. И у них нет какого-то строгого назначения. Бизнес-логика, транспорт, взаимодействие компонентов или еще какая-нибудь служебная фигня - это всё сервисы.
источник

Б

Богдан in Angular - русскоговорящее сообщество
Ilja
то они не првильно читали с конца в начало . а когда батюшка ngRxпришёл поняли . но переписывать не стали  .
ну раз в святом писании (доках) канонично юзать сервисы, тогда может ngRx это протестанты что расскалывают единство ))
источник

Б

Богдан in Angular - русскоговорящее сообщество
Maxim Afanasev
Вообще, с сервисами как термином есть проблема. Ангуляровские сервисы - это просто синглтоны, которые создаются ангуляровским DI. Поэтому всё, что не компонент, директива или пайп - это сервис. И у них нет какого-то строгого назначения. Бизнес-логика, транспорт, взаимодействие компонентов или еще какая-нибудь служебная фигня - это всё сервисы.
та да на vue это будет обычный js модуль, который импортися в компонент )))
источник

MA

Maxim Afanasev in Angular - русскоговорящее сообщество
Богдан
та да на vue это будет обычный js модуль, который импортися в компонент )))
Ну, за счет использования DI это более гибко. Можно запровайдить сервис только в конкретный компонент, например.
источник

Б

Богдан in Angular - русскоговорящее сообщество
Maxim Afanasev
Ну, за счет использования DI это более гибко. Можно запровайдить сервис только в конкретный компонент, например.
так а заимпортить только в нужный компонент на vue это не то же самое?
источник

AS

Anton Shvets in Angular - русскоговорящее сообщество
Богдан
Господа, а не подскажите наколько сейчас православно юзать ngRx? Я как бы ранее на vue писал, а теперь приходится на angular?
если вы привыкли к vuex берите ngrx или ngsx.
минус в бойлерплейте и сложности композиции.
и это тоже сервисы.

без стейтов можно сделать архитектуру гибче, но их нужно уметь готовить
источник

Б

Богдан in Angular - русскоговорящее сообщество
например создал api а далее импорти его только в те компоненты где оно используется и бандлер скажет спасибо своим размером ))
источник

AS

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

I

Ilja in Angular - русскоговорящее сообщество
Богдан
ну раз в святом писании (доках) канонично юзать сервисы, тогда может ngRx это протестанты что расскалывают единство ))
на самом деле . всё от интерактивности твоего апп зависит . нужна интерактивность рекактивность и приложение большое юзай rxjs . апп маленькое сценариии не сложные . юзай сервисы. всё я в бф пошёл играться
источник

Б

Богдан in Angular - русскоговорящее сообщество
Ilja
на самом деле . всё от интерактивности твоего апп зависит . нужна интерактивность рекактивность и приложение большое юзай rxjs . апп маленькое сценариии не сложные . юзай сервисы. всё я в бф пошёл играться
сенкс
источник

D

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

new BehaviorSubject<Params>({});

можно как-то с помощью pipe возвращать Observable<boolean>, т.е property у объекта существует
источник