Size: a a a

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

2019 October 31

NB

Nick Bychkov in Angular - русскоговорящее сообщество
Всем привет.
А можно ли как-то через angular router переопределить обработчик кнопки "назад" (которая popstate event вызывает)? Надо при открытой модалке закрывать её при нажатии на эту кнопку
источник

DD

Dragon3DGraff DGN in Angular - русскоговорящее сообщество
Artem Kovalov
Подскажите книгу по Ангулару для джуна.  Желательно на русском. Есть ли вообще что-то на русском достойное?
Я купил такую. Мне пока нравится
источник

DD

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

VZ

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

ДМ

Денис Макаров in Angular - русскоговорящее сообщество
Nick Bychkov
Всем привет.
А можно ли как-то через angular router переопределить обработчик кнопки "назад" (которая popstate event вызывает)? Надо при открытой модалке закрывать её при нажатии на эту кнопку
не проще модалку на урл вешать? тогда никакие костыли и ставить не нужно
источник

ВЛ

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

AS

Anton Shvets in Angular - русскоговорящее сообщество
Влад Лобода
Ребята, всем привет, может кто просвятит, у меня в combineLatest есть момент, когда срабатывает сразу изменение двух обсерваблов внутри, изза этого подписка на combineLatest срабатывает дважды и уходит лишний запрос на сервак. Как с такой штукой можно побороться?
debounceTime
источник

ВЛ

Влад Лобода in Angular - русскоговорящее сообщество
Anton Shvets
debounceTime
спасибо, сейчас посмотрю что за штука такая)
источник

Вキ

Вертихвост キバ in Angular - русскоговорящее сообщество
Влад Лобода
Ребята, всем привет, может кто просвятит, у меня в combineLatest есть момент, когда срабатывает сразу изменение двух обсерваблов внутри, изза этого подписка на combineLatest срабатывает дважды и уходит лишний запрос на сервак. Как с такой штукой можно побороться?
А важно реагировать на два события, или можно на одно?
источник

ВЛ

Влад Лобода in Angular - русскоговорящее сообщество
Вертихвост キバ
А важно реагировать на два события, или можно на одно?
важны оба. обычно меняется одно из двух событий и все ок
источник

S

Sake in Angular - русскоговорящее сообщество
Влад Лобода
важны оба. обычно меняется одно из двух событий и все ок
прочитайте про forkJoin
источник

S

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

ВЛ

Влад Лобода in Angular - русскоговорящее сообщество
Sake
прочитайте про forkJoin
🙏
источник

PB

Philipp Bondarev in Angular - русскоговорящее сообщество
Ребят, кто-нибудь пробовал на бэк ASP.Net Core 2 WebApi с  подключенным MessagePack отправить через fetch() запрос POST с body - JSON.stringify(myJSObject)?
Как вы обходили проблемы декодирования MessagePack? Я попробовал упаковать на фронте не через JSON.stringify(), а через msgpack-light. Бэк все-равно ругается...
источник

DP

Dmitry Pestov in Angular - русскоговорящее сообщество
Есть форма с вложенными формами. Данные изменяются    redux. при изменении значений, при помощи patchValue изменяю данные. пробема в том что во вложенной форме возникают проблемы. могу обновить только часть данных которая идет первой. Если поменять местами будет работать то что поднял на верх
https://gyazo.com/cce5ceebfb83f5aa7b611e6cccecc03f
источник

DP

Dmitry Pestov in Angular - русскоговорящее сообщество
вот стуктура формы  https://gyazo.com/dd7a887cdbaba6575feeee3ec4e331eb
источник

VC

Vladimir Chekushkin in Angular - русскоговорящее сообщество
Ребят, привет. Кто может с классами помочь разобраться?

С сервера приходят соответствующие данные из разных методов api:
{
   data: {любые поля},
   ...
}

Я создаю для конкретных данных класс со статическим методом create(data: {})

Например, класс Card:
export class Card {
   id: string;
   name: string
   number: string;

  public static create(data: {id, name, number}): Card {
      const card = new Card();
      card.id = data.id;
      card.name = data.name;
      card.number = data.number;
      return card
  }
}
И когда я вызываю соответствующий api, после возврата данных в сервисе я  возвращаю обработанные данные с конкретным типом:
.then((srcData) => Card.create(srcData))

Теперь собственно вопрос:
Данные теперь прилетают в новом виде, т.е у данных появилась обёртка. Теперь data это оъект, у которого появились новые поля, в одном из котором лежат старые данные:

Новые данные выглядят следующим образом:
{
  filed1,
  field2,
  field3,
  content: {} | [] - вот тут теперь лежат старые данные
}

Как мне правильно теперь можно сделать обёртку, над своими существующими данными? Как теперь вернуть новый тип, внутри которого будет поле с любым типом?
Например, что-то типо такого:

export class Page {
   field1,
   filed2,
   field3,
   content: <T>
}

Мне нужно чтобы на запрос данных, я создал Page у которого content: Card бы был, например. Как можно правильнее сделать?
источник

VT

Viktor Tsvetkov in Angular - русскоговорящее сообщество
Vladimir Chekushkin
Ребят, привет. Кто может с классами помочь разобраться?

С сервера приходят соответствующие данные из разных методов api:
{
   data: {любые поля},
   ...
}

Я создаю для конкретных данных класс со статическим методом create(data: {})

Например, класс Card:
export class Card {
   id: string;
   name: string
   number: string;

  public static create(data: {id, name, number}): Card {
      const card = new Card();
      card.id = data.id;
      card.name = data.name;
      card.number = data.number;
      return card
  }
}
И когда я вызываю соответствующий api, после возврата данных в сервисе я  возвращаю обработанные данные с конкретным типом:
.then((srcData) => Card.create(srcData))

Теперь собственно вопрос:
Данные теперь прилетают в новом виде, т.е у данных появилась обёртка. Теперь data это оъект, у которого появились новые поля, в одном из котором лежат старые данные:

Новые данные выглядят следующим образом:
{
  filed1,
  field2,
  field3,
  content: {} | [] - вот тут теперь лежат старые данные
}

Как мне правильно теперь можно сделать обёртку, над своими существующими данными? Как теперь вернуть новый тип, внутри которого будет поле с любым типом?
Например, что-то типо такого:

export class Page {
   field1,
   filed2,
   field3,
   content: <T>
}

Мне нужно чтобы на запрос данных, я создал Page у которого content: Card бы был, например. Как можно правильнее сделать?
источник

VC

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

Вキ

Вертихвост キバ in Angular - русскоговорящее сообщество
Vladimir Chekushkin
Ребят, привет. Кто может с классами помочь разобраться?

С сервера приходят соответствующие данные из разных методов api:
{
   data: {любые поля},
   ...
}

Я создаю для конкретных данных класс со статическим методом create(data: {})

Например, класс Card:
export class Card {
   id: string;
   name: string
   number: string;

  public static create(data: {id, name, number}): Card {
      const card = new Card();
      card.id = data.id;
      card.name = data.name;
      card.number = data.number;
      return card
  }
}
И когда я вызываю соответствующий api, после возврата данных в сервисе я  возвращаю обработанные данные с конкретным типом:
.then((srcData) => Card.create(srcData))

Теперь собственно вопрос:
Данные теперь прилетают в новом виде, т.е у данных появилась обёртка. Теперь data это оъект, у которого появились новые поля, в одном из котором лежат старые данные:

Новые данные выглядят следующим образом:
{
  filed1,
  field2,
  field3,
  content: {} | [] - вот тут теперь лежат старые данные
}

Как мне правильно теперь можно сделать обёртку, над своими существующими данными? Как теперь вернуть новый тип, внутри которого будет поле с любым типом?
Например, что-то типо такого:

export class Page {
   field1,
   filed2,
   field3,
   content: <T>
}

Мне нужно чтобы на запрос данных, я создал Page у которого content: Card бы был, например. Как можно правильнее сделать?
Можете вот тут посмотреть пример
https://www.typescriptlang.org/docs/handbook/generics.html#generic-classes
источник