Skip to content

Instantly share code, notes, and snippets.

@vkrol
vkrol / readme.md
Created October 16, 2020 15:24 — forked from zerkalica/readme.md
Заметки о tsconfig

Признаки хорошо настроенного tsconfig

Все нижеперечисленное справедливо в основном для монорепы. В проектах, где используются алиасы в импортах между либами и все зависимости в инклудах, алгоритмы упрощаются и кол-во проблем должно быть меньше.

Надо проверять работу и в vscode и в webstorm, т.к. у последнего, поверх алгоритма tsserver, накладываются свои алгоритмы автоимпортов модулей. То, что работает в webstorm, может не работать в других ide, которые полагаются только на tsserver.

tsconfig считается настроенным, если:

  1. Проходит сборка через tsc --build для либ и webpack для приложух
  2. Чекаются типы в ide и tsc --noEmit, в том числе, в файлах, которые не попадают в сборку: тесты, storybook-файлы
@vkrol
vkrol / delay.ts
Created December 9, 2019 20:46 — forked from MattiasBuelens/delay.ts
raceAbort example
function delay(): Promise<void> {
return new Promise((resolve) => setTimeout(resolve, 100));
}
function abortableDelay(signal: AbortSignal): Promise<void> {
return new Promise((resolve, reject) => {
if (signal.aborted) {
return reject(new DOMException('Aborted', 'AbortError'));
}
const onAbort = () => {
@vkrol
vkrol / _1_"script async defer" blocks "load" event.md
Created May 17, 2019 16:16 — forked from jakub-g/_1_"script async defer" blocks "load" event.md
Beware of "script async defer" blocking HTML "load" event

Beware of <script async defer> blocking HTML "load" event

2015.10.07 t

On the importance of simulated latency testing, and bulletproofing your page from the third-party JS load failures

TL;DR