
Nikolay
18.04.2018
18:33:31
import * from 'highcharts'
Ну или что ты там из неё хочешь

Евгений Vúffe
18.04.2018
18:33:53
я сделал npm -i foobar и npm -i @types/foobar

Google

Евгений Vúffe
18.04.2018
18:34:16
типы и библиотека писались разными людьми

Nikolay
18.04.2018
18:34:29
Должны вроде бы

Евгений Vúffe
18.04.2018
18:34:40
Ммм, интересно. А где про это написано?

Nikolay
18.04.2018
18:34:40
Попробуй

Евгений Vúffe
18.04.2018
18:34:46
В теории

Nikolay
18.04.2018
18:35:23
Ну у меня работало, никогда типы не импортировал. По крайней мере VS code понимает так

rbsx
18.04.2018
18:35:53
тайпинги сами подтягиваются

Евгений Vúffe
18.04.2018
18:36:58
о, дароу

rbsx
18.04.2018
18:37:49
привет :)

Alex
18.04.2018
20:07:46
превед
а можно ли сделать такое поле у класса чтобы туда можно было положить значение только один раз? типа readonly
но чтобы присваивать не обязательно из конструктора

Дмитрий
18.04.2018
20:09:39

Google

Alex
18.04.2018
20:10:55

Anton
18.04.2018
20:27:26
Гайз, как заставить tsc фэйлить процесс при наличии ошибок? Пытаюсь проверку типов в ci воткнуть
Блин, популярный же должен быть вопрос вроде, неужели никто не знает? На всякий случай уточню: мне не надо фэйлиться по первой ошибке, мне просто надо, чтобы в конце был ненулевой exit code, если ошибки были

Morsik
18.04.2018
20:36:15
так он по дефолту так работает?

Sergey
18.04.2018
20:38:14
Да вроде да, завершается ненулевым кодом при ошибках
https://github.com/Microsoft/TypeScript/pull/711/files
Вон там вроде еггог кодов ещё добавили

Anton
18.04.2018
20:48:36
Хм, окей, спасибо. Значит я чего то не так сделал, буду ковыряться дальше :)

Mark
19.04.2018
08:14:57
Ребята а подскажите для чего нужен конкретно generic type ??? только для возвращаемых значений ?

Artur
19.04.2018
08:27:52

Vladimir
19.04.2018
08:40:31
а гуголь спросить :) пробовали?
там все подробно ...

Mark
19.04.2018
08:41:22
Ну а можно просто написать дженерики нужны для того того того ???

Vladimir
19.04.2018
08:41:29
Обобщённое программирование

Mark
19.04.2018
08:41:44

Vladimir
19.04.2018
08:41:53
https://www.google.com.ua/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0ahUKEwj-4cPI-MXaAhVK2SwKHXMIC6AQFggnMAA&url=https%3A%2F%2Fru.wikipedia.org%2Fwiki%2F%25D0%259E%25D0%25B1%25D0%25BE%25D0%25B1%25D1%2589%25D1%2591%25D0%25BD%25D0%25BD%25D0%25BE%25D0%25B5_%25D0%25BF%25D1%2580%25D0%25BE%25D0%25B3%25D1%2580%25D0%25B0%25D0%25BC%25D0%25BC%25D0%25B8%25D1%2580%25D0%25BE%25D0%25B2%25D0%25B0%25D0%25BD%25D0%25B8%25D0%25B5&usg=AOvVaw0xeTeERjTwIi3QNMLRo3s0
так понятней?
:)

Mark
19.04.2018
08:43:53
Но все равно спасибо !Ъ

Google

Vladimir
19.04.2018
08:44:35
основа: Обобщённое программирование (англ. generic programming) — парадигма программирования, заключающаяся в таком описании данных и алгоритмов, которое можно применять к различным типам данных, не меняя само это описание.
пишешь например алгоритм который будет работать с любыми тапими данных
но на этапе написания ты не знаешь точно какие будут типы этих данных
просто конкретный тип ты заменяешь на абстрактный, который в процессе использования данного алгоритма ты подставишь вместо T будет например TYourClass

andretshurotshka?❄️кде
19.04.2018
09:16:38

Mike
19.04.2018
09:16:59
о чудо из чудес https://github.com/Microsoft/TypeScript/pull/22658
я джва года ждал эту фичу

Aleh
19.04.2018
09:19:35
Ооооо
Наконец-то

Mike
19.04.2018
09:20:12
и оно в плане на релиз в 2.9 в мае

Max
19.04.2018
09:32:47
а что за declarationMaps?

Mike
19.04.2018
09:39:03
сейчас если ты подключаешь сбилженный проект как js и d.ts то при попытке найти где объявлени тип ты попадёшь в d.ts и не сможешь попасть на тайпскриптовый исходник

Mike
19.04.2018
09:39:07
а с мапами сможешь

Max
19.04.2018
10:01:12
это круто, хотя каждый раз будет по разному, некоторые пакеты содержат d.ts написаный руками, некоторые типы из @types, и только если типы сгеренены компилятором будет работать
и кстати говоря иногда даже удобнее полазить только по дтске чем по коду, надеюсь будет опционально

Ilya
19.04.2018
10:17:19
Что-то так себе фича

Mike
19.04.2018
10:55:32
зависит от того насколько качественно документировано то что ты используешь и насколько много исходников тебе приходится читать по работе
есть вопрос по неймспейсам (только не говорите что они говно и не надо их использовать) вот минимал кейс выловил https://www.typescriptlang.org/play/#src=namespace%20gobi.panda%20%7B%0D%0A%7D%0D%0A%0D%0Anamespace%20panda.url%20%7B%0D%0A%20%20%20%20export%20class%20Url%20%7B%0D%0A%20%20%20%20%7D%0D%0A%7D%0D%0Anamespace%20gobi.loaders%20%7B%0D%0A%09export%20class%20Loader%20%7B%0D%0A%09%09baseUrl%3A%20panda.url.Url%3B%0D%0A%09%7D%0D%0A%7D%0D%0A


Леха
19.04.2018
11:05:29
Хай гайз! Имею проблему с правила TSLint.
Расширяю прототип Vue своим плагином и мне надо указать его в Vue типы.
import { AxiosStatic } from 'axios'
declare module 'vue/types/vue' {
interface Vue {
$api: AxiosStatic;
}
interface VueConstructor {
$api: AxiosStatic;
}
}
Но в проекте правило именования интерфейсов включено, и они должны начинаться с I.
Как поступить? Можно как-то указать исключение для правила?

Morsik
19.04.2018
11:05:55
// tslint:disable-next-line

Google

Леха
19.04.2018
11:06:47
Сурово... Больше нет вариантов?

Roman
19.04.2018
11:07:01
Кто знает, подскажите по типизации. Вот у меня есть главный класс, который принимает в конструктор в качестве методов другие классы, у которых есть свои методы. Как мне задавать тип этих классов в конструкторе главного класса?
Конструкция такая:
const api: Main = new Main(new Request(), new RequestSender(), new Ui())

Admin
ERROR: S client not available

Morsik
19.04.2018
11:07:23

Леха
19.04.2018
11:07:54
?? ОК

Евгений Vúffe
19.04.2018
11:13:48

Roman
19.04.2018
12:02:51

Vitaliy
19.04.2018
13:29:53
ребята, подскажите, есть ли возможность инлайнить значения енумов в тс?
https://www.typescriptlang.org/play/index.html#src=enum%20Color%20%7B%0D%0A%20%20%20%20RED%20%3D%201%2C%0D%0A%20%20%20%20GREEN%20%3D%202%2C%0D%0A%20%20%20%20BLUE%20%3D%203%2C%0D%0A%7D%0D%0A%0D%0Aconsole.log(Color.RED)%3B
typescript
enum Color {
RED = 1,
GREEN = 2,
BLUE = 3,
}
console.log(Color.RED);
javascript actual
var Color;
(function (Color) {
Color[Color["RED"] = 1] = "RED";
Color[Color["GREEN"] = 2] = "GREEN";
Color[Color["BLUE"] = 3] = "BLUE";
})(Color || (Color = {}));
console.log(Color.RED);
expected
console.log(1);

Максим
19.04.2018
13:39:04
https://www.typescriptlang.org/play/index.html#src=const%20enum%20Color%20%7B%0D%0A%20%20%20%20RED%20%3D%201%2C%0D%0A%20%20%20%20GREEN%20%3D%202%2C%0D%0A%20%20%20%20BLUE%20%3D%203%2C%0D%0A%7D%0D%0A%0D%0Aconsole.log(Color.RED)%3B


Vitaliy
19.04.2018
13:39:33
огонь, спасибо
в использовании только получение значения ограничивается, как я понял?
Color[Color.RED];

Максим
19.04.2018
13:42:22
Ага, для const enums так нельзя

Vitaliy
19.04.2018
13:44:51
прошелся по всему проекту глобальной заменой ?

Den
19.04.2018
16:12:24
Подскажите, может кто знает как через tsconfig или tslint или настройкой vscode можно запретить использовать русские буквы в названиях классов, методов, переменных?

andretshurotshka?❄️кде
19.04.2018
16:15:09
https://eslint.org/docs/rules/id-match
+ https://github.com/nzakas/eslint-plugin-typescript
правда не уверен работает с бабеловским парсером
или нет

Den
19.04.2018
16:27:08
@goodmind ? круто! Попробую прикрутить) жаль в tslint нет подобного

Google

andretshurotshka?❄️кде
19.04.2018
16:27:41
только там надо прямо бабел с пресетом тайпскрипта настраивать, а не typescript-eslint-parser

Den
19.04.2018
16:28:35
Хм, да, это всё немного усложнит)

andretshurotshka?❄️кде
19.04.2018
16:28:36
проще наверно портировать в тслинт это)

Den
19.04.2018
16:29:10
Ага)

andretshurotshka?❄️кде
19.04.2018
16:29:18
https://github.com/eslint/eslint/blob/master/lib/rules/id-match.js
https://github.com/buzinas/tslint-eslint-rules нету id-match

Den
19.04.2018
16:33:46
Да, тоже на него смотрю. Жаль, что нету (

andretshurotshka?❄️кде
19.04.2018
16:37:50
спам
!спам
или тут нету бота

Max
19.04.2018
16:38:11
Пидоры да