Size: a a a

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

2021 January 19

AD

Apache DOG™ in TypeScript — русскоговорящее сообщество
Например shapeless
источник

AD

Apache DOG™ in TypeScript — русскоговорящее сообщество
И выдают интерфейс приятный
источник

AD

Apache DOG™ in TypeScript — русскоговорящее сообщество
Последняя настолько популярна, что под неё даже сделаны фиксы в IDE
источник

AD

Apache DOG™ in TypeScript — русскоговорящее сообщество
У тебя конечно такой радости нет, по этому просто приписать цыфирию к этому и нагенерить реализаций через morph-ts
источник

AD

Apache DOG™ in TypeScript — русскоговорящее сообщество
Нужна конкретика, добро пожаловать в ЛС
источник

LC

Lapis Cursed in TypeScript — русскоговорящее сообщество
Apache DOG™
Нужна конкретика, добро пожаловать в ЛС
Спасибо.
источник
2021 January 20

Е

Екатерина in TypeScript — русскоговорящее сообщество
подскажите, а у меня допустим есть объект
const obj = {
arr: [],
abc: {}
}

как можно указать, что arr будет массивом строк?
источник

u

uid in TypeScript — русскоговорящее сообщество
Lapis Cursed
Ну, тогда в es код говно:
interface ObjectConstructor {
   assign<T, U>(target: T, source: U): T & U;
   assign<T, U, V>(target: T, source1: U, source2: V): T & U & V;
   assign<T, U, V, W>(target: T, source1: U, source2: V, source3: W): T & U & V & W;
   ...
}
С TS 4.0 подобные типы можно записывать компактнее с помощью variadic tuple: play.
Но встроенные типы не обновляли, чтобы не слишком ломать совместимость с TS 3.
источник

AD

Apache DOG™ in TypeScript — русскоговорящее сообщество
Екатерина
подскажите, а у меня допустим есть объект
const obj = {
arr: [],
abc: {}
}

как можно указать, что arr будет массивом строк?
function isArrayString(s: any): s is string[] { return Array.isArray(arr) && arr.every((x:any)=> typeof x == "string")} , вызвать где надо
источник

AD

Apache DOG™ in TypeScript — русскоговорящее сообщество
/report
источник

АЗ

Андрей Звёздочка... in TypeScript — русскоговорящее сообщество
Екатерина
подскажите, а у меня допустим есть объект
const obj = {
arr: [],
abc: {}
}

как можно указать, что arr будет массивом строк?
arr: [] as Array<string>
источник

D

Draft in TypeScript — русскоговорящее сообщество
Екатерина
подскажите, а у меня допустим есть объект
const obj = {
arr: [],
abc: {}
}

как можно указать, что arr будет массивом строк?
type Obj = { arr: string[]; abc: Object }
const obj:Obj = {...}
источник

AM

Art Mas in TypeScript — русскоговорящее сообщество
источник

И

Иван in TypeScript — русскоговорящее сообщество
👌🏿
источник

KS

Kirill Sukhomlin in TypeScript — русскоговорящее сообщество
Написано же
Type '"y" | null' is not assignable to type 'S extends "x" ? "y" : null'.
 Type 'null' is not assignable to type 'S extends "x" ? "y" : null'.(2322)
источник

KS

Kirill Sukhomlin in TypeScript — русскоговорящее сообщество
хотя фиг знает
источник

KS

Kirill Sukhomlin in TypeScript — русскоговорящее сообщество
а, это ж обычный overload получается
источник

KS

Kirill Sukhomlin in TypeScript — русскоговорящее сообщество
источник

KS

Kirill Sukhomlin in TypeScript — русскоговорящее сообщество
вообще, дженерики в таком виде не особо нужны
вместо
function xx<S extends 'x'>(str: S)
можно написать
function xx(str: 'x')
источник

Т

Тёмыч in TypeScript — русскоговорящее сообщество
меня дженерики в принципе улыбают где-то в глубине души.
сначала ты выбираешь ЯП с нестрогой типизацией
потом ты прикручиваешь сверху типизацию
потом ты пишешь конструкцию, что бы немношк обойти типизацию, которую прикрутил...
источник