Size: a a a

TypeScript — русскоговорящее сообщество

2020 April 20

РФ

Руслан Фадеев in TypeScript — русскоговорящее сообщество
Один и тот же интерфейс можно объявлять несколько раз, в отличие от типов, но это разве что в .d.ts полезно
источник

BB

Bugs Bunny in TypeScript — русскоговорящее сообщество
ну как “без разницы”?
type может быть юнионом, например, и описывать не только объект
источник

VK

Vladimir Kurchatkin in TypeScript — русскоговорящее сообщество
Речь про type Foo = {}, естественно
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ͅ ̤ ̬̪ in TypeScript — русскоговорящее сообщество
Bugs Bunny
ну как “без разницы”?
type может быть юнионом, например, и описывать не только объект
+
Не любой же тайп можно заимлементировать в классе?
источник

BB

Bugs Bunny in TypeScript — русскоговорящее сообщество
ага
источник

BB

Bugs Bunny in TypeScript — русскоговорящее сообщество
ну без разницы здесь не ответ в общем
источник

BB

Bugs Bunny in TypeScript — русскоговорящее сообщество
есть у них отличия фундаментальные
источник

VK

Vladimir Kurchatkin in TypeScript — русскоговорящее сообщество
Ну так пиши)
источник

BB

Bugs Bunny in TypeScript — русскоговорящее сообщество
ну так написал
источник

BB

Bugs Bunny in TypeScript — русскоговорящее сообщество
это основное отличие в принципе
источник

BB

Bugs Bunny in TypeScript — русскоговорящее сообщество
ну и выше человек еще подкинул кейс
источник

VK

Vladimir Kurchatkin in TypeScript — русскоговорящее сообщество
Еще раз - речь про

interface Foo {}

vs

type Foo = {}
источник

BB

Bugs Bunny in TypeScript — русскоговорящее сообщество
ну это да, но type Foo = {} | string
источник

D

Dmitry in TypeScript — русскоговорящее сообщество
Подскажите плиз, почему при мапе выдает эту ошибку?
источник

D

Dmitry in TypeScript — русскоговорящее сообщество
Вот интерфейс
источник

D

Dmitry in TypeScript — русскоговорящее сообщество
Each member of the union type '(<U>(callbackfn: (value: DomainDto, index: number, array: DomainDto[]) => U, thisArg?: any) => U[]) | (<U>(callbackfn: (value: Dictionary, index: number, array: Dictionary[]) => U, thisArg?: any) => U[])' has signatures, but none of those signatures are compatible with each other.  TS2349
источник

MK

Mikhail Kilin in TypeScript — русскоговорящее сообщество
Dmitry
Вот интерфейс
Поменяй для проперти data тип на Array<DomainDto | Dictionary>
источник
2020 April 21

u

uid in TypeScript — русскоговорящее сообщество
from earth
Плиз хелп

interface ResizeObserver {
 new(callback: ResizeObserverCallback): ResizeObserver;
}

export class ResizeObserverMock implements ResizeObserver {
 constructor(callback: ResizeObserverCallback) {}
}
Эта особенность подробно описана в документации: Difference between the static and instance sides of classes.
Если коротко, implements проверяет только тип инстанса, то есть свойства инстанса ("поля класса") и прототипа; а конструктор и статические свойства — это отдельный тип самого класса.
Как дополнительно проверять тип конструктора, описано там же (пример: play).
источник

DE

Dmitry Esin in TypeScript — русскоговорящее сообщество
Ребятки, глупый вопрос по описанию интерфейса.
Поле объекта может называться "disabled" либо "checked".
Как правильно уточнить имя поля с булевым значением?

export interface IElement {
 id: string;
 type: string;
 // [name: "checked" | "disabled"]
 [name: string]: boolean;
}
источник

A

Alex CherryTea in TypeScript — русскоговорящее сообщество
Dmitry Esin
Ребятки, глупый вопрос по описанию интерфейса.
Поле объекта может называться "disabled" либо "checked".
Как правильно уточнить имя поля с булевым значением?

export interface IElement {
 id: string;
 type: string;
 // [name: "checked" | "disabled"]
 [name: string]: boolean;
}
export interface IElement {
 id: string;
 type: string;
 checked?: boolean;
 disabled?: boolean;
}
источник