Nickolai
Anonymous
Sergey
https://blog.neufund.org/why-we-have-banned-default-exports-and-you-should-do-the-same-d51fdc2cf2ad
@spatNeHochu @nick_dev
1000
Привет
Кто-то знает об особенности оптимизации сайта/spa в мозилле? SPA на хроме прогружается на 7+ секунд быстрее, в сравнении с мозиллой.
Karina
ребята, кто знает. Отправляю запрос XMLHttpRequestом и в зависимости от статуса делаю редирект с помощью window.location, вот так примерно:
xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
switch (xhr.status) {
case 201:
window.location = '...';
}
}
}
вопрос - как дождаться когда редирект отработает?
Таймураз
По мне так правильная статья
Ilya
Ilya
все грузится заново - посему никак.
Karina
Ilya
балин. спасибо 😉
расскажи пару слов о том что ты хочешь сделать, возможно ты просто не в том направлении развиваешь мысль.
Ilya
Karina
Anton
внутри своей компании code style guide-ом
Anton
насколько я понял
Ilya
ок, спасибо. я знаю что это
Если backend с которым ты работаешь - доступен для модификаций, то возможно с точки зрения архитектуры, будет лучше чтобы они вместе со страницей успеха выдавали данные необходимые.
Ilya
ну тут надо конечно рассматривать полностью стек с которым ты работаешь чтобы определиться с наилучшим вариантом
Андрей
Вам надо теорию подтянуть.
Anonymous
все же не пойму, мы о том как язык работает или о том как уйти от одинаковых имен в проекте это разные вещ
Karina
Sergey
Sergey
Anonymous
Ilya
я бы даже больше сказал:
импорты это вообще не о том как язык работает :)
Anonymous
Андрей
Sergey
Anton
кто-то защищает дефолтные экспорты/импорты? или тут только о терминологии спорят?
Anonymous
Спокойнее.
я же уже сказал два одинаковых локальных имени класа
Sergey
я же уже сказал два одинаковых локальных имени класа
вот дефолтные экспорты как раз и порождают разные имена
одно при импорте другое внутри модуля экспорта
и при этом связи прямой между модулями нет, кроме строки описывающий путь к модулю
а это может быть как ../foo, так и ./
Anonymous
Ilya
завязываем, Вячеславу надо RTFM про модули.
разговор не завязывается, он не понимает концепт и неймспейсинг в модулях, понятия изоляции их scope, и почему деструкция из импорта наилучший способ, нежели присвоение
Ilya
Anonymous
Sergey
Андрей
Anonymous
Sergey
Anton
Sergey
Anton
во, Foo as Bar это хорошо
Sergey
блин, тут че никто не знает ESModules кроме пары людей?
Anonymous
Sergey
НАРОД!
Идите читать полное описание ES Modules
Sergey
не несите бредятину
Anton
да вы тут спорите сами не знаете о чём, никто сформилировать не в состоянии :) внёс немного ясности
Андрей
Sergey
default exports завезли, чтобы люди могли импортить картиночки и чистые файлы
import image from './image.jpg'. с помощью сторонних тулзов
ну и commonjs/amd модули
Sergey
Sergey
ясно
Sergey
закрываем тему
Anonymous
Sergey
Sergey
почитай спеку ES Modules
там НЕТ module.exports
Sergey
import { Foo } from 'foo' ?
Sergey
Sergey
А статью не удосужился прочитать?
Sergey
Тебе 3 человека аргументы писали
причем почти все повторяли то, что было в статье (потому что это очевидная проблема default export)
Sergey
ну не просто так же
Anonymous
А ты выше мои аргументы не читал?
я же сказал статья чушь полная все прекрасно работает в ide, а рефакторинг не должен менять оба имени по спеки это очевиднт
Ilya
Это опционально, но сколько я видел проектов - везде от дефолтных экспортов отказались или отказываются.
Sergey
Sergey
я не хочу иметь класс Foo в разных файлах как Bar, F, Doit, Margo и прочее
Sergey
я хочу смотреть на код и очевидно видеть имена всех классов
Anonymous
Sergey
++++
Sergei
не, просто в ТС работает только явный дефолтный экспорт, а ES6 вроде как умеет делать синтетический импорт (который на самом деле import * as default) (поправьте, если соврал)
Sergey
как писать это выбор команды и каждого разработчика
в этой статье как раз и описывают как писать наиболее прозрачно и понятно для всех