Size: a a a

2020 November 11

AP

Alexander Ponomarev in Svelte [svelt]
/// <reference path="./module.d.ts" />

Чем это проще чем импортировать конкретный тип из конкретного модуля?
источник

ER

Eric Rovell in Svelte [svelt]
Alexander Ponomarev
/// <reference path="./module.d.ts" />

Чем это проще чем импортировать конкретный тип из конкретного модуля?
Я это указал в одном файле, на который ссылаюсь в tsconfig
источник

ER

Eric Rovell in Svelte [svelt]
Поэтому этот типы этого файла стали глобальными
источник

ER

Eric Rovell in Svelte [svelt]
Alexander Ponomarev
/// <reference path="./module.d.ts" />

Чем это проще чем импортировать конкретный тип из конкретного модуля?
"files": [
   "src/types/main.d.ts"
 ]

Вот в main я референсы засунул
источник

AP

Alexander Ponomarev in Svelte [svelt]
и все равно пишете namespace.Type когда можно было нормально держать файловую структуру и разбивать на модули делая import type { Type } from 'namespace'
источник

ER

Eric Rovell in Svelte [svelt]
Alexander Ponomarev
и все равно пишете namespace.Type когда можно было нормально держать файловую структуру и разбивать на модули делая import type { Type } from 'namespace'
Да, хорошая идея, надо попробовать
источник

ER

Eric Rovell in Svelte [svelt]
С другой стороны заманчивой казалась идея просто писать типы, не приводя импорт
источник

AP

Alexander Ponomarev in Svelte [svelt]
Пишите я вам не запрещаю, я просто говорю что это тупиковый подход. Если вам встретится одна из непреодолимых проблем этого подхода, то вам придется разбить этот глобал на мелкие куски, а это может быть больно. Если не встретится то можно хоть 10лет жить с этим.
источник

ER

Eric Rovell in Svelte [svelt]
Alexander Ponomarev
Пишите я вам не запрещаю, я просто говорю что это тупиковый подход. Если вам встретится одна из непреодолимых проблем этого подхода, то вам придется разбить этот глобал на мелкие куски, а это может быть больно. Если не встретится то можно хоть 10лет жить с этим.
Спасибо большое за советы, буду пробовать разные подходы👍
источник

AP

Alexander Ponomarev in Svelte [svelt]
Если работа проектная по мотивам сделал\сдал\забыл навсегда\начал новый, то можно как угодно писать
источник

ER

Eric Rovell in Svelte [svelt]
Alexander Ponomarev
Если работа проектная по мотивам сделал\сдал\забыл навсегда\начал новый, то можно как угодно писать
Нет, я бы так больше не хотел. Хочу сразу нормально, вне зависимости от забуду или нет.
источник

IF

Igor Filippov in Svelte [svelt]
Alexander Ponomarev
Пишите я вам не запрещаю, я просто говорю что это тупиковый подход. Если вам встретится одна из непреодолимых проблем этого подхода, то вам придется разбить этот глобал на мелкие куски, а это может быть больно. Если не встретится то можно хоть 10лет жить с этим.
Я вообще, говорил про неймспейсы для конкретных энамов, чтобы код не превращать бардак. А не про глобальные
источник

AP

Alexander Ponomarev in Svelte [svelt]
Igor Filippov
Я вообще, говорил про неймспейсы для конкретных энамов, чтобы код не превращать бардак. А не про глобальные
зачем енамам неймспейсы? я не использую enum которые не const вообще, потому что это пораждает объект в рантайме и импорты физического обьекта в каждый модуль которому нужен этот енум.

может я не знаю какого-то суперудобного хинта
источник

DK

Dan Kozlov in Svelte [svelt]
Alexander Ponomarev
зачем енамам неймспейсы? я не использую enum которые не const вообще, потому что это пораждает объект в рантайме и импорты физического обьекта в каждый модуль которому нужен этот енум.

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

IF

Igor Filippov in Svelte [svelt]
Alexander Ponomarev
зачем енамам неймспейсы? я не использую enum которые не const вообще, потому что это пораждает объект в рантайме и импорты физического обьекта в каждый модуль которому нужен этот енум.

может я не знаю какого-то суперудобного хинта
https://pastebin.com/fLch5iFW Такого плана случаи.
источник

IF

Igor Filippov in Svelte [svelt]
А про то что оно в рантайм попадет, ну это экономия на спичках, особенно сколько всего в рантайм попадает из-за левых либ у людей
источник

AP

Alexander Ponomarev in Svelte [svelt]
Dan Kozlov
В свелте консты не поюзаешь.
Я использую консты в компонентах (типа, стейт текущего компонента, например) и неконсты с минимальным трейсом — в файлах. Как-то жить надо
Я понимаю. Это дурацкая проблема с isolatedModules и транспайл онли режимом, который неймспейсы тоже не очень хорошо переваривает. Но всегда есть опция preserveEnums или литеральный енум типа type A = 'a' | 'b' | 'c'
источник

AP

Alexander Ponomarev in Svelte [svelt]
Igor Filippov
А про то что оно в рантайм попадет, ну это экономия на спичках, особенно сколько всего в рантайм попадает из-за левых либ у людей
На самом деле экономия зависит от случая. По вашему кейсу понятно, но если разделить енум и неймспейс на разные имена получится не сильно сложнее
источник

IF

Igor Filippov in Svelte [svelt]
Alexander Ponomarev
На самом деле экономия зависит от случая. По вашему кейсу понятно, но если разделить енум и неймспейс на разные имена получится не сильно сложнее
Будет в рантайме объект с другим именем прост, зачем эта путаница, смысла нет
источник

IF

Igor Filippov in Svelte [svelt]
Никому не навязываю впрочем, пишите как хотите)
источник