Size: a a a

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

2019 October 04

ГР

Глеб Рябцев in Angular - русскоговорящее сообщество
2 интстанса одного сервиса в компонент - это точно не интереснее
источник

ГР

Глеб Рябцев in Angular - русскоговорящее сообщество
так как противоречит идеологии инжешинов в ангуляре
источник

ei

eth inv in Angular - русскоговорящее сообщество
Глеб Рябцев
2 интстанса одного сервиса в компонент - это точно не интереснее
Ну почему, это ведь наследование. Может есть способы
источник

MF

Mireq Fallen in Angular - русскоговорящее сообщество
что-то вроде:

interface IClassFactory {
   create<T>(name: string): T;
}

export class Class1 {
   constructor(protected factory: IClassFactory) {}
   public clone() { return this.factory.create<Class1>('Class1'); }
}

export class Factory implements IClassFactory {
   create<T>(name: string): T {
       switch (name) {
           case 'Class1':
               return new Class1(this) as any;
           case 'Class2':
               return new Class2(this) as any;
           case 'Class3':
               return new Class3(this) as any;
       }

       throw new Error('Invalid name: ' + name);
   }
}

мне тут as any не нравится...
источник

AI

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

ГР

Глеб Рябцев in Angular - русскоговорящее сообщество
as any и не нужен
источник

AI

Alex Inkin in Angular - русскоговорящее сообщество
Ага
источник

ei

eth inv in Angular - русскоговорящее сообщество
Alex Inkin
Можно извратиться и сделать мульти токен с массивом сервисов, но выглядит, как жопа )
Ага, на самом деле мне дергать несколько методов нужно. Но не хочется копировать (
источник

ГР

Глеб Рябцев in Angular - русскоговорящее сообщество
а вы не можете вынести эту логику в интерсептор?
источник

ГР

Глеб Рябцев in Angular - русскоговорящее сообщество
в зависимости от запроса подкладывать разный токен?
источник

ГР

Глеб Рябцев in Angular - русскоговорящее сообщество
условие мне кажется вполне реально написать
источник

ei

eth inv in Angular - русскоговорящее сообщество
Глеб Рябцев
в зависимости от запроса подкладывать разный токен?
К сожалению нет, не могу так (
источник

KV

Karpov Vladimir in Angular - русскоговорящее сообщество
Парни привет. Есть ли способ очистить историю Роутинга?
источник

Нh

НикШе http://10.0.16.200 in Angular - русскоговорящее сообщество
Karpov Vladimir
Парни привет. Есть ли способ очистить историю Роутинга?
this.router.navigate(['/view'], { replaceUrl: true });
источник

ei

eth inv in Angular - русскоговорящее сообщество
Глеб Рябцев
условие мне кажется вполне реально написать
Просто чтобы понимали, при инициализации сервиса отправляется запрос по токену, далее сервер возвращает доступные методы и свойства и уже относительно этих методов и свойств строятся остальные методы сервиса. Можно конечно вызывать внутри сервиса ещё один запрос, но он мне нужен для отчёта больше и делать это ради отчёта не очень
источник

MF

Mireq Fallen in Angular - русскоговорящее сообщество
Глеб Рябцев
as any и не нужен
вообще-то нужен...

но можно так переписать:

export class Factory implements IClassFactory {
   create(name: 'Class1'): Class1;
   create(name: 'Class2'): Class2;
   create(name: 'Class3'): Class3;
   create<T = any>(name: string): any {
       switch (name) {
           case 'Class1':
               return new Class1(this);
           case 'Class2':
               return new Class2(this);
           case 'Class3':
               return new Class3(this);
       }

       throw new Error('Invalid name: ' + name);
   }
}
источник

ei

eth inv in Angular - русскоговорящее сообщество
Глеб Рябцев
условие мне кажется вполне реально написать
Ладно немного поговнокожу, все-равно спасибо за проявленный интерес!)
источник

KV

Karpov Vladimir in Angular - русскоговорящее сообщество
НикШе http://10.0.16.200
this.router.navigate(['/view'], { replaceUrl: true });
Спасибо, то что мне нужно!
источник

MF

Mireq Fallen in Angular - русскоговорящее сообщество
eth inv
Ну почему, это ведь наследование. Может есть способы
а вы уверены, что вам не multi нужен?
источник

MF

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