
andretshurotshka?❄️кде
25.04.2017
12:08:22
есть в 2.3

Max
25.04.2017
12:08:27
у меня 2.3

Дмитрий
25.04.2017
12:08:30

Max
25.04.2017
12:08:37

Google

Max
25.04.2017
12:08:41
тут правда генерик лучше
https://github.com/Microsoft/TypeScript/wiki/What%27s-new-in-TypeScript#generic-parameter-defaults
збс

andretshurotshka?❄️кде
25.04.2017
12:09:45
T = DefaultType

Max
25.04.2017
12:10:57
так
а можешь ткнуть в статью или объяснить чем лучше type vs interface?
тут вроде пишут что те же яйца, только с лимитами
http://stackoverflow.com/a/37233777
> Interface types have many similarities to type aliases for object type literals, but since interface types offer more capabilities they are generally preferred to type aliases.
а генерики V/T и прочее это ок?
ну однобуквенная херня

andretshurotshka?❄️кде
25.04.2017
12:25:41
ок

Alex
25.04.2017
12:34:54
Народ, а как в TS с css-modules? Я читал, что боль.

Google

Max
25.04.2017
12:35:18
ох
генерики потянули за собой кучу говна в 5 файлах
как форс-каст сделать? )
особенно заеибсь
class VDataSheet extends DataSheet<V>{}
return (<VDataSheet …/>)
:)

andretshurotshka?❄️кде
25.04.2017
12:42:15

Max
25.04.2017
12:42:36
ну пришлось в any
в другой тип ругался все равно

andretshurotshka?❄️кде
25.04.2017
12:42:46

Max
25.04.2017
12:43:29
ну типа нельзя сделать return (<DataSheet<V....

Dreamerinnoise
25.04.2017
13:25:11
Может мимо вопрос
а по Haxe есть тг чат?

Aleh
25.04.2017
18:55:13
А implements делается банально:
const a: SomeYourType = new SomeYourClass

Ivam
26.04.2017
09:22:56
Может кто подскажет почему на notExistValue1 ошибка не вываливается?

Max
26.04.2017
09:23:26
дай код
у себя прогоню

Ivam
26.04.2017
09:23:50
interface ITest {
someValue: string
}
type SomeFunction<R> = () => R;
const test1: SomeFunction<ITest> = () => ({
someValue: 'asasdsd',
notExistValue1: 'asda',
})
const test2: ITest = {
someValue: 'asasdsd',
notExistValue2: 'asda',
}

Max
26.04.2017
09:25:02
➜ formbuilder git:(master) ✗ ./node_modules/.bin/tsc src/test.ts
src/test.ts(14,3): error TS2322: Type '{ someValue: string; notExistValue2: string; }' is not assignable to type 'ITest'.
Object literal may only specify known properties, and 'notExistValue2' does not exist in type 'ITest'.

Google

Ivam
26.04.2017
09:25:19
это на notExistValue2 падает
а не на notExistValue1

Max
26.04.2017
09:25:40
а
хм

Алан
26.04.2017
15:09:41
Фарту масти ауе

andretshurotshka?❄️кде
26.04.2017
15:10:33
так падает
interface ITest {
someValue: string
}
const test1 = (): ITest => ({
someValue: 'asasdsd',
notExistValue1: 'asda',
})
https://goo.gl/b3ypi4

Boris
26.04.2017
15:57:59
ребята как в тс прописать childContextTypes
?

Dreamerinnoise
26.04.2017
16:05:54

Boris
26.04.2017
16:16:49
да это ясно я думал что можно без PropTypes обойтись )

Wiggly
26.04.2017
22:14:41

Сергей
26.04.2017
22:24:36

from
27.04.2017
00:01:14
А вот если я пишу у себя в компоненте что-то типа this.something = 'anything' то тайпскрипт ругается: Property 'something' does not exist on type 'MyComponent'
как правильно сказать, что я хочу разрешить это свойство на компоненте?

Dreamerinnoise
27.04.2017
04:02:10

from
27.04.2017
08:36:51

Dreamerinnoise
27.04.2017
08:37:20
оно будет public по дефолту

Google

Aleh
27.04.2017
08:44:18
Но лучше конечно присвоить пустую строку)

from
27.04.2017
08:45:05

Admin
ERROR: S client not available

from
27.04.2017
08:45:21
Это я для упрощения написал)

Alex
27.04.2017
12:43:26
Народ, как проверить, что элемент есть в enum? Мне бы как-то это в интерфейсе делать

Сергей
27.04.2017
12:45:35

Alex
27.04.2017
12:45:48
вот и не хотелось бы, хотелось бы при сборке

Сергей
27.04.2017
12:46:11
если переменная, то только рантайм

Alex
27.04.2017
12:46:52
а есть способ как-то проверять при сборке? Могу даже от enum отказаться

Сергей
27.04.2017
12:46:58
нет
пользовательский ввод ты как проверишь при сборке?
также и тут
если переменная (в ней может быть что угодно, в зависимости от внешних условий), то только рантайм

Alex
27.04.2017
12:49:05
ну у меня все хвосты найти можно, откуда пришла переменная. Условно - у меня есть кнопка и у нее есть определенные стили. Стилей ограниченное количество. Например, 5. И им соответствуют id от 1 до 5. Хотелось бы кидать ворнинг при написании renderButton(6)

andretshurotshka?❄️кде
27.04.2017
12:51:00
const f = (t: 1 | 2 | 3 | 4 | 5) => {
}

Alex
27.04.2017
12:51:25
Да, я сейчас как раз это тестирую
но это неудобно

Сергей
27.04.2017
12:52:04

Alex
27.04.2017
12:52:17
у меня enum Color = { Blue, Orange, Grey, White }
и тогда могу юзать Color.Blue, а тут придется юзать, например, 2

Google

Сергей
27.04.2017
12:52:24
но это в случае, если ts сможет вычислить
и Color['Blue']

Alex
27.04.2017
12:52:50
сейчас у меня
type ColorName = 1 | 2 | 3 | 4 | 5;
можно как-то типа type ColorName = getids(MyEnum)
?

Сергей
27.04.2017
12:53:47
нет вроде

Alex
27.04.2017
12:54:47
ну это я понимаю

Сергей
27.04.2017
12:54:59
окей
что будет Object.keys(Foo) ?

Alex
27.04.2017
12:55:23
0,1,2. Но это же только в рантайме?

Сергей
27.04.2017
12:55:33
нет