Сова пишет…
3K subscribers
373 photos
37 videos
5 files
440 links
Download Telegram
Default Exports in JavaScript Modules Are Terrible

Ещё одна статья, в которой рассказывается, почему не стоит использовать export default.

В кратце:
- Автокомплит не подсказывает, что у модуля есть export default, если вы начали делать импорт через { }
- То, что экспортируется через export default может быть импортировано под любым именем. Это создает сразу несколько проблем: возможность криво назвать, то что импортируется; возможность назвать по-разному одну и ту же сущность в разных файлах; возможность неконсистентного именования при импортах из пакетов

Если вам нужен аргумент против использования export default в своих проектах - посмотрите эту статью.

В целом у export default есть боле мене адекватные места для применения. Например, библиотеки. import React from 'react' - это как раз случай, когда export default не делает хуже. Хотя и с именоваными экспортами было бы нормально.

Лично я предпочитаю забанить export default в проектах на уровне линтера. Отсутствие адекватного автокомплита и возможность накосячить с именованием слишком сильно бьют по DX в проекте

https://www.lloydatkinson.net/posts/2022/default-exports-in-javascript-modules-are-terrible/

#development #javascript #modules
👍27👎5