
Dmitrii
01.01.2018
22:18:58

Vasiliy
01.01.2018
22:19:06
enum Theme {
Normal = 'normal',
Action = 'action',
}
interface SomeProps {
size: Size;
theme: Theme;
}
applyMods({ size: Size.S, theme: Theme.Normal });
это можно заметить если сделать вот так:
type Size = 'xs' | 's' | 'm';
type Theme = 'normal' | 'action';
const mods2 = {
size: 's' as Size,
theme: 'normal' as Theme,
};

Google

andretshurotshka?❄️кде
01.01.2018
22:20:29
никак потому что тс не выводит call-site типы

Dmitrii
01.01.2018
22:20:50
примерно понял, спасибо

andretshurotshka?❄️кде
01.01.2018
22:20:57
в флоу норм

Dmitrii
01.01.2018
22:22:38
черт, а в тс так планируется делать?

andretshurotshka?❄️кде
01.01.2018
22:26:40
я как понял в тс архитектура не позволит, там же типы выводятся от AST, а в флоу граф

Friedrich
02.01.2018
06:40:41
я как понял в тс архитектура не позволит, там же типы выводятся от AST, а в флоу граф
Позволит, если подумать. Тип у литерала просто должен выводиться корректно, а не как сейчас.
Литерал вида { size: 's', theme: 'normal' } должен сразу иметь тип { size: 's'; theme: 'normal'; } (который дальше корректно приведётся в { size: 'xs' | 'x'; theme: ... }), а не { size: string; theme: string; }, как сейчас сделано. Конкретно этот случай архитектура как таковая вполне потянет.


serg
02.01.2018
15:00:17
Как настроить автоматически траспилинг ts в js, как только я запускаю дебаг в vsc?
Это же в launch.json подкручивается... А что конкретно там нужно сделать?

Mikhail
02.01.2018
16:54:39

serg
02.01.2018
17:35:25
tsc -w
Миш, ты точно понял суть вопроса?

Mykola
02.01.2018
18:35:58

serg
02.01.2018
18:36:34
а сам task как выглядит?

Google

Mykola
02.01.2018
18:37:00

serg
02.01.2018
18:37:29
так это package же...
а есть файл tasks.json в папке .vscode?

Mikhail
02.01.2018
18:38:26

Mykola
02.01.2018
18:38:38

serg
02.01.2018
18:39:23
ну пока что рабочий вариант от мишана...
надо запустить вотчер, и тогда уже видно после сохранения файла изменения прямо в js "на ходу"

Mykola
02.01.2018
18:39:48

serg
02.01.2018
18:40:34

Mykola
02.01.2018
18:41:08
Тоесть тебе нужно при запуске дебагера что бы ts файлы транспаились ?.

serg
02.01.2018
18:41:38
да, чтобы не запускать вручную tsc
ты перед запуком дебага, делаешь команду tsc?
Вот. видишь какая ошибка...
предлагает создать task
Как только я жму "Настроить задачу", то создаётся файл task.json

Abdulvakhab
02.01.2018
18:58:49
Привет ребята, как заставить сафари читать файл в папке?
Пробовал писать
<script src="sample.ts"></script>
<script src="./sample.ts"></script>
Каюсь js

ENAMETOOLONG
02.01.2018
21:38:00
локальные ресурсы можно открывать только с локальных HTML страничек. Мне кажется что у тебя поднят сервер

Abdulvakhab
02.01.2018
21:38:54

Google

Bender
02.01.2018
22:33:51
http://www.ozon.ru/context/detail/id/2457392/
Читал кто?

sne18
02.01.2018
22:37:01
Читал и применял

Aleh
02.01.2018
22:40:51
это словарь, не очень полезная штука
гораздо практичнее посмотреть на принципы за этими решениями, чем на сами решения

Bender
02.01.2018
22:52:07
Читал кто?

Yuri
02.01.2018
22:54:48
Теперь грех не прочитать

Abdulvakhab
02.01.2018
22:55:36
Я нет, но спасибо за книгу:)

Bender
02.01.2018
22:55:47
Знал что понравится)

andretshurotshka?❄️кде
02.01.2018
22:55:56
В пине висело когда-то

Ostap
03.01.2018
13:23:11
есть вопрос по тайпингам. есть либа (моя). у меня есть dependency которое без тайпингов. я добавил typeRoots и там .d.ts файл. у меня все компилиться и тдтп.
но вот в dist у меня лежат все мои тайпинги но нету d.ts файлов, поэтому все кто юзают мою либу получают болт в виде "Could not find a declaration file for module"
кто-то сталкивался ?

Admin
ERROR: S client not available

Олег
03.01.2018
13:26:05

Ostap
03.01.2018
13:26:42
{
"compilerOptions": {
"moduleResolution": "node",
"target": "es5",
"module": "es2015",
"lib": [
"es2015",
"es2016",
"es2017",
"dom"
],
"strict": true,
"sourceMap": true,
"declaration": true,
"allowSyntheticDefaultImports": true,
"jsx": "react",
"experimentalDecorators": true,
"emitDecoratorMetadata": false,
"declarationDir": "dist/types",
"outDir": "compiled",
"typeRoots": [
"node_modules/@types",
"src/types"
]
},
"include": [
"src"
]
}
я же говорю. мои .d.ts есть а вот пустышки для внешних либ — нету

Олег
03.01.2018
13:29:20
помойму у тебя ошибка в том что твои интерфейсы содержат ссылки на интерфейсы твоей зависимости
поэтому тс пытается найти декларацию для них и не может
либо устрани это, либо экспорти интерфейсы зависимости

Ostap
03.01.2018
13:30:27

Google

Олег
03.01.2018
13:32:42
я бы спросил зачем декларации в отдельную папку кладешь

Ostap
03.01.2018
13:33:32
а где их хранить ?
те которые для библиотек

Олег
03.01.2018
13:34:09
рядом с файлами которым они принадлежат

Aleh
03.01.2018
13:34:23
или в npm(node_modules)

Ostap
03.01.2018
13:34:38
может я чего-то не понимаю, но декларации моего кода авто-генерируються
в моем коде есть зависимости, в которых нет тайпингов
у себя я решаю это через typeRoots + .d.ts файлы в отдельной папке
но юзать это человек с typescript который сделал npm install my-lib не может

Олег
03.01.2018
13:37:04
потому что ему все равно что у тебя там в конфиге

Ostap
03.01.2018
13:37:10
+++
как это пофиксить :)

Олег
03.01.2018
13:37:30
выше написал

Ostap
03.01.2018
13:43:34
выше написал
мда, я наверное очень туплю. ткни в пример пожайлуйста

Ҫѐҏӗѫӑ
03.01.2018
13:58:14
@aquahawk https://github.com/JasonHuang3D/AJC-Flash-WebAssembly-Examples
мб тебе пригодится чем-то