Size: a a a

2020 November 11

AK

Andrey Katrusha in Svelte [svelt]
забрал через форм дату
источник

AP

Alexander Ponomarev in Svelte [svelt]
все ключи в объекте это строки же
источник

AP

Alexander Ponomarev in Svelte [svelt]
нельзя перебрать ключи объекта и получить не строки =)
источник

AK

Andrey Katrusha in Svelte [svelt]
я хз. кароче. я думаю я просто переусложнил все
источник

..

. . in Svelte [svelt]
. .
Здравствуйте. А кто-нибудь может объяснить, почему биндятся все добавленные в массив объекты?
Добрый день. Подниму свой ночной вопрос — не расскажете, почему биндится таким странным образом?
источник

ON

Oleg N in Svelte [svelt]
Кирилл Спасибович
@PaulMaly не знаешь что за прикол с биндами ?
если есть массив интов, ты эти инты через each распихиваешь вот так https://t.me/sveltejs/119821, в итоге в объекте в качестве ключей вместо интов строки
в объекте ключи - всегда строки, там другого нет. юзай Map
источник

ER

Eric Rovell in Svelte [svelt]
Начал использовать TS не так давно и возник вопрос, какие имеются практики работы с типами?

- Хранить и объявлять типы прямо в компоненте
- Держать все типы в файле и экспортировать
- записать в d.ts файлы

Я немного запутался, помогите советом, пожалуйста
источник

IF

Igor Filippov in Svelte [svelt]
Eric Rovell
Начал использовать TS не так давно и возник вопрос, какие имеются практики работы с типами?

- Хранить и объявлять типы прямо в компоненте
- Держать все типы в файле и экспортировать
- записать в d.ts файлы

Я немного запутался, помогите советом, пожалуйста
В файлах .model.ts или.enum.ts
источник

IF

Igor Filippov in Svelte [svelt]
По крайней мере я делаю так
источник

ER

Eric Rovell in Svelte [svelt]
Igor Filippov
В файлах .model.ts или.enum.ts
почему не d.ts? Чем мне понравился этот подход, то импортировать типы не нужно. Правда, в таком случае требуется namespacing
источник

IF

Igor Filippov in Svelte [svelt]
Eric Rovell
почему не d.ts? Чем мне понравился этот подход, то импортировать типы не нужно. Правда, в таком случае требуется namespacing
d.ts то для библиотечных аннотаций. Как раз таки лучше импортировать типы и юзать их. Так когнитивная нагрузка на программиста меньше
источник

ER

Eric Rovell in Svelte [svelt]
Igor Filippov
d.ts то для библиотечных аннотаций. Как раз таки лучше импортировать типы и юзать их. Так когнитивная нагрузка на программиста меньше
Спасибо, понял.
источник

AP

Alexander Ponomarev in Svelte [svelt]
Eric Rovell
Начал использовать TS не так давно и возник вопрос, какие имеются практики работы с типами?

- Хранить и объявлять типы прямо в компоненте
- Держать все типы в файле и экспортировать
- записать в d.ts файлы

Я немного запутался, помогите советом, пожалуйста
- если типы нужны только модулю, то хранить и объявлять их внутри этого же модуля
- если типы являются частью публичного интерфейса только одного модуля, то хранить, объявлять и экспортировать в этом же модуле
- если типы описывают какую-то универсальную сущность, которая может использоваться\создаваться в разных модулях, то их надо хранить в отдельном модуле и не смешивать с другими типами. То есть не надо делать файл types.ts и сваливать туда все такие типы, нужно разбивать по разным файлам по доменам использования.

- про d.ts для своего кода можешь забыть, создавать d.ts это работа комплиятора. d.ts нужен только если ты хочешь импортировать npm модуль, а для него нет уже написанной типизации. Тогда ты создаешь d.ts и типизируешь этот модуль сам. Так же через d.ts описываются *.json, *.svg, *.css модули.

Типы вырезаются после компиляции вместе с их импортами, поэтому отделять типы от их реализации без особой нужды бессмысленно
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Eric Rovell
Начал использовать TS не так давно и возник вопрос, какие имеются практики работы с типами?

- Хранить и объявлять типы прямо в компоненте
- Держать все типы в файле и экспортировать
- записать в d.ts файлы

Я немного запутался, помогите советом, пожалуйста
Я в context=module описываю сейчас и экспортирую оттуда же. Это для компонентов, а если общие то папочка types
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Alexander Ponomarev
- если типы нужны только модулю, то хранить и объявлять их внутри этого же модуля
- если типы являются частью публичного интерфейса только одного модуля, то хранить, объявлять и экспортировать в этом же модуле
- если типы описывают какую-то универсальную сущность, которая может использоваться\создаваться в разных модулях, то их надо хранить в отдельном модуле и не смешивать с другими типами. То есть не надо делать файл types.ts и сваливать туда все такие типы, нужно разбивать по разным файлам по доменам использования.

- про d.ts для своего кода можешь забыть, создавать d.ts это работа комплиятора. d.ts нужен только если ты хочешь импортировать npm модуль, а для него нет уже написанной типизации. Тогда ты создаешь d.ts и типизируешь этот модуль сам. Так же через d.ts описываются *.json, *.svg, *.css модули.

Типы вырезаются после компиляции вместе с их импортами, поэтому отделять типы от их реализации без особой нужды бессмысленно
Хм, по поводу d.ts может я чего не понял, но как же настройка генерирующая эти файлы при компиляции сорцов?
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Всегда ее включаю
источник

AP

Alexander Ponomarev in Svelte [svelt]
Pavel 🦇 Malyshev
Хм, по поводу d.ts может я чего не понял, но как же настройка генерирующая эти файлы при компиляции сорцов?
Есть npm модули написанные на JS и для которых нет встроенных тайпингов и нет тайпингов в репе DefinetelyTyped. Чтобы их использовать в тайпскрипте придется написать для них d.ts (если конечно тсконфиг не бесполезный который позволяет все что угодно). Это один из обычных кейсов где нужно писать руками d.ts файл.

В остальных случаях сам tsc их генерирует при компилции кода =)
источник

AP

Alexander Ponomarev in Svelte [svelt]
а так же если ты хочешь поюзать import icon from 'icon.svg' в тайпскрите, то придется тоже d.ts написать с
declare module "*.svg" { declare const content: string; export default content; }
источник

AS

Alexey Solovyov in Svelte [svelt]
Pavel 🦇 Malyshev
Я в context=module описываю сейчас и экспортирую оттуда же. Это для компонентов, а если общие то папочка types
А кстати, всегда интересовало, чем в таком случае плохо держать типы в отдельных файлах и иклудить их на уровне компилятора, а в файлах использовать declare?
Если что, не работал с ТС в Свелт, мб там есть какие-нибудь особенности на этот счёт?
источник

AP

Alexander Ponomarev in Svelte [svelt]
Alexey Solovyov
А кстати, всегда интересовало, чем в таком случае плохо держать типы в отдельных файлах и иклудить их на уровне компилятора, а в файлах использовать declare?
Если что, не работал с ТС в Свелт, мб там есть какие-нибудь особенности на этот счёт?
тем что названия будут иметь коллизии, а ТС типы мержит с одинаковыми названиями
источник