
andretshurotshka?❄️кде
18.05.2018
13:55:34
никак
тс не умеет

Dmitry
18.05.2018
14:01:15

Пёс Цифрового Сопротивления
18.05.2018
14:42:02
подскажите плз как вебпак работает с либами уже собраными вебпаком. есть либа А они делают shim через вебпак и предоставляют global переменную
есть Ангулар6, который этот шим больше не делает. и в итоге, когда эту либу я использую она валится с ошибкой.

Google

Пёс Цифрового Сопротивления
18.05.2018
14:42:33
разве запакованная либа не должна работать независимо?

Alexandr
18.05.2018
15:10:32
ангуляр мосщь =)

Oleg
18.05.2018
15:39:57
Коллеги, насколько необходимо указывать для функции : void, если она ничего не возвращает?
В ts playground, выводиться void автоматически
В ide если void не указан, выводится any

Sergey
18.05.2018
15:44:54
А может это какой-нибудь noImplicitAny у них так делает?

Aleh
18.05.2018
15:48:31
Ну или разные версии компилятора
В playground по умолчанию выключен noImplicitAny

Sergey
18.05.2018
15:53:24

Alice
18.05.2018
15:55:14
Да вроде и всегда у меня так было, хз.
Ну, у меня всегда но имплисит эни было.

Sergey
18.05.2018
15:56:54
Хз, на дефолтном почти tsconfig проверял

Oleg
18.05.2018
16:00:54
Спасибо, возможно я и ошибся)

Антон
18.05.2018
17:06:50
Как ловчее использовать типы данных на фронте и на беке? Т.е. организовать что-то вроде общей библиотеки типов.

Google

Alice
18.05.2018
17:10:01

Антон
18.05.2018
17:10:54
Монорепо?
Це было бы проще, но не, разные репы.

Alice
18.05.2018
17:11:47

Пёс Цифрового Сопротивления
18.05.2018
17:31:01

Антон
18.05.2018
17:31:35
интересная мысль. спасибо.

Evegeniy
18.05.2018
17:32:52
ой

Sergey
18.05.2018
17:36:15
А кто-нибудь знает чего на GraphQL такая яростная дрочка идёт? Вроде OData делает примерно то же самое уже лет сто как

Пёс Цифрового Сопротивления
18.05.2018
17:53:00

Sergey
18.05.2018
17:53:49
Но в принципе я получил ответ на свой вопрос, спасибо)

Alexandr
18.05.2018
17:54:23
блин, ангуляр крутая тема
сейчас изучаю =)
буду в связке с шарпом юзать
я не думал что так веб далеко продвинулся
за какие-то 3-4 года

Пёс Цифрового Сопротивления
18.05.2018
17:55:26

Alexandr
18.05.2018
17:55:57
ну бэкэнд на шарпе
имел в виду

Sergey
18.05.2018
17:56:10
Ясно понятно. Всем так буду отвечать
Ну блин а погуглить? Смысл у одаты точно такой же, orm на клиенте. Только она уже давно есть, но фб чтобы не взял и лисапет на квадратных колёсах не построил

Google

Пёс Цифрового Сопротивления
18.05.2018
17:57:59
Я погуглю и там будет куча маркетингово говна

Sergey
18.05.2018
17:58:19

Пёс Цифрового Сопротивления
18.05.2018
17:58:24
Помимо идеи графкл еще и тулзы дает
А то на сайт зайдешь и нихуя не понятно

Sergey
18.05.2018
18:00:20
Я понял, спасибо

Пёс Цифрового Сопротивления
18.05.2018
18:00:58
Осталось понять что такое ОРМ на клиенте

Mikhail
18.05.2018
19:19:32

Sergey
18.05.2018
19:48:53
Ну те тайпинги что у них на гите вообще такого не содержат что вы хотите
Они референсят какие-то телеграм тайпинги, может там есть?

Mikhail
18.05.2018
20:01:43

Max
19.05.2018
08:35:48
парни
у меня класс не выбрасывает самостоятельно ошибку, если в конструкторе number, а я забрасываю string в рантайме.
и приходится вручную делать
constructor(public payload: number) {
if (typeof payload !== 'number') {
throw new Error('ERROR');
}
}

Max
19.05.2018
08:36:08
есть какие-то идеи, как это можно автоматизировать

Igor
19.05.2018
08:43:13
Пару раз пользовался https://github.com/fabiandev/ts-runtime
Решает такие проблемы, но на крупных проектах не гонял, истово советовать не могу

Sergey
19.05.2018
08:47:51

Vlad
19.05.2018
08:50:41


Max
19.05.2018
08:54:48
А декоратором нельзя такого достигнуть? Не совсем правда автомагически если можно даже
я нашёл такой кейс, когда с HTML пробрасываю строку, метод принимает как аргумент, и могу указать "number" тип. Метод не ругается. Ну и ладно, не о нём сейчас.
делаю new AddNum( значение_аргумента ) внутри метода (например).
и класс спокойно это принимает. И здесь легко ошибиться. Нет никаких ошибок. И придётся кому-то много времени потратить на дебаг. Я хотел бы чтобы происходила какая-то проверка, но автоматизировано, и скрыто от реализации для пользователей.
потому что если не автоматизировать, то действительно бы подошёл кейс в конструкторе делать проверку
декоратор над классом?
ну это я делаю дополнительный оверхед для существующего функционала :(
т.к. проблема возникла как раз из-за декоратора над методом, в котором нашёл проблему)

Google

Max
19.05.2018
08:57:29
всё бы облегчило мне задание, если бы я могу в любом месте приложения знать, какой аргумент в конструкторе принимает какой-нибудь класс.
например
typeof SomeClass.payload
но так сделать не могу похоже

Dmytro
19.05.2018
09:01:02
всем привет!

Sergey
19.05.2018
09:01:48
Ну или какое-то расширение для tsc, но как там с этим я тоже хз)

Admin
ERROR: S client not available

Dmytro
19.05.2018
09:02:57
https://pastebin.com/pZcCm5J2
Property 'createCard' does not exist on type 'typeof StripeCard'.
Подскажите пожалуйста как правильно описать?

Max
19.05.2018
09:16:00
Вам нужна рефлексия, но я не знаю как с ней в тс. В жс вроде в каком-то мутном зачаточном состоянии
я попробовал её) Попробовал её скорее не к классу, а методу. В методе я определил входящий аргумент с разметки number, и рефлексией уже внутри декоратора я парсил это. Но проблема в том, что пользователь может прописать string, и присылать с разметки строку. А класс ожидает number. Сложно отдебажить такое. Тогда уже нужно вешать рефлексию на класс. Нужно как-то попробовать это сделать. Мало ли, получится
для этого каким-то образом нужно достать таргет, oh my ...
не, думаю рефлексия на класс здесь не подойдёт :(

Alex
19.05.2018
09:59:53
Что лючше, TypeScript или CoffeeScript ??? ?

Abu
19.05.2018
10:00:37

Alex
19.05.2018
10:01:36
но паскаль не едет в браузере

Friedrich
19.05.2018
10:02:43
В 2018 году что угодно едет в браузере тем или иным способом.

Alex
19.05.2018
10:13:27
в 2018 году стоит ли использовать CoffeeScript ?

Morsik
19.05.2018
10:13:47

Andrey
19.05.2018
10:28:49

Alex
19.05.2018
10:29:12
тут посоны начали новый проект на Coffee, я им говорю что не надо, а они не верят

Friedrich
19.05.2018
10:29:39

Google

Max
19.05.2018
11:21:19

Dmytro
19.05.2018
11:23:05

Ivan
19.05.2018
11:57:37
Лучше не юзать неймсейсы, они в тс не очень

Alice
19.05.2018
12:02:38

Alex
19.05.2018
12:26:34
тут вопрос в том хочешь ты [1] поизвращаться/ экспериментировать, или же хочешь [2] пилить проект и чтобы проект быстрее вперёд двигался. Если [1] то ок, а если [2] то лучше не надо так делать

Alexandr
19.05.2018
13:04:33
привет всем. а vue.js норм с typescript дружит?
или лучше все-таки ангуляр?

Max
19.05.2018
13:11:48
ангуляр написан на тайпскрипте
определённо если выбираешь из-за тайпскрипта фреймворк - то Angular

Dmitrii
19.05.2018
14:44:11
а если в модуле неправильно определили одно из пропертей интерфейса - как лучше на проектной уровне закостылить?
в методе не все параметры описали

Dmitry
19.05.2018
14:50:12
Господа, я что-то немного завис с типом для древовидной структуры. Есть функция, которая принимает массив вида [{ someKey: ‘’, children: [{ someKey: ‘’, children: [] }] }] и название ключа, в котором лежит следующий уровень. У кого-нибудь был опыт написания типов для такого?
Ломается именно при попытке название ключа через дженерик передавать
type Tree = [{
name: string,
children?: Tree
}];
const a: Tree = [{
name: '2',
children: [{
name: '3',
children: [{
name: '4'
}]
}]
}]
Простой работающий вариант, как раз его пытаюсь превратить в вариант, где можно любой ключ передать

Morsik
19.05.2018
14:58:30

Dmitry
19.05.2018
14:58:41
Ага

Morsik
19.05.2018
14:59:14
Попробуй t extends string