Size: a a a

2020 December 03

ER

Eric Rovell in Svelte [svelt]
Alexander Ponomarev
этож самсунги, в аэропортах до сих пор таблички что какой-то самсунг нельзя приносить в самолет)
Note 7 вроде
источник

ER

Eric Rovell in Svelte [svelt]
Alexander Ponomarev
 
      grid.items.slice(ncol).forEach((c, i) => {
         let prev_fin = grid.items[i].getBoundingClientRect().bottom /* bottom edge of item above */,
               curr_ini = c.getBoundingClientRect().top /* top edge of current item */;
         
         c.style.marginTop = `${prev_fin + grid.gap - curr_ini}px`
       });

Этот кусок по идее самый плохой. Здесь в цикле идет инвалидация дома и сразу его пересчет. По нормальному это делается сначало снятием всех ректов а потом постановкой всех марджинов. Но я не знаю правильно ли это будет по логике =)
Можно вопрос про инвалидацию дома? Почему лучше сначала отмерить, а потом менять?
источник

AP

Alexander Ponomarev in Svelte [svelt]
каждый раз когда меняешь и просишь рект, то нужно пересчитать этот рект а для этого сделать пересчет стилей, рефлоу и рассчитать трансформацию.

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

AP

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

ER

Eric Rovell in Svelte [svelt]
Alexander Ponomarev
каждый раз когда меняешь и просишь рект, то нужно пересчитать этот рект а для этого сделать пересчет стилей, рефлоу и рассчитать трансформацию.

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

ER

Eric Rovell in Svelte [svelt]
Попробую исправить, отпишусь, спасибо
источник

СА

Сергей Артёмов... in Svelte [svelt]
Alexander Ponomarev
не знаю что с линуксом, макось это юникс с таким же терминалом
там от юникса уже кроме терминала ничего не осталось
источник

AP

Alexander Ponomarev in Svelte [svelt]
Сергей Артёмов
там от юникса уже кроме терминала ничего не осталось
а что-то нужно? =)
источник

СА

Сергей Артёмов... in Svelte [svelt]
Alexander Ponomarev
а что-то нужно? =)
Не от юникса, но в макоси много чего нужно было, чего в ней нет. И из-за чего приходилось линукс ставить.
Но кажется это уже жуткий оффтоп)
источник

A

Alexander in Svelte [svelt]
Марк Танащук
В винде её напрочь отключить можно, а эппл специально в конце 2018 года её сделали неотключаемой
До версий 17-го года легко отключалось. В последних версиях все труднее и труднее
источник

A

Alexander in Svelte [svelt]
Alexander Ponomarev
попробуйте, он и не такое умеет) и чанки грузит без всяких шимпортов и цсс разбивает на чанки и вообще пушка
Так я и пробовал. У меня холловорлд на Вью для прода (минфицированный и манглированный) с двумя строчками кода он собрал в бандл весом в 100 кб. Это при том, что вью через cdn без минфикации весил на 30% меньше. Пробовал на нем так же собирать хэлловорлд без фреймворка. Тоже из одной строки кода выдал г*вно на несколько килобайт. При чем из "мастеров вебпака" никто так и не смог сказать, как это оптимизировать. Это для них был "абсолютно нормальный подход" и "умный сборщик". Ну реально. Он сует в бандл все подряд.
Я не буду спорить с тем, что вебпак легче настраивается, по нему дофига видео и готовых тулзов больше, чем для роллап. Роллап требует чуть больше внимания при тюнинге и чуть больше гуглинга на старте. Но после того, как я увидел, как он собирает проект, выкидывая все лишнее и создавая на выходе прозрачный код, желания к вебпаку возвращаться желания нет никакого. В моей системе ценностей, это глубокое легаси, которое ещё актуально только благодаря прокрастинации рынка и поддержке корпораций
источник

MM

Mikluha Mclay in Svelte [svelt]
Всем привет. Есть родительский и дочерний компонент. Из дочернего экспортирована переменная foo. Нужно инициировать срабатывание этого выражения $: foo && changed(); в дочернем компоненте, не изменяя значение foo в родительском? Чтобы не делать в родительском _foo = foo; foo = 0; foo = _foo :)
источник

MM

Mikluha Mclay in Svelte [svelt]
в общем принудить svelte посчитать foo измененной
источник

MM

Mikluha Mclay in Svelte [svelt]
или надо экспортировать еще 1 переменную типа forceFoo и уже делать такое выражение $: (foo || forceFoo) && changed(); ?
источник

IF

Igor Filippov in Svelte [svelt]
Alexander
Так я и пробовал. У меня холловорлд на Вью для прода (минфицированный и манглированный) с двумя строчками кода он собрал в бандл весом в 100 кб. Это при том, что вью через cdn без минфикации весил на 30% меньше. Пробовал на нем так же собирать хэлловорлд без фреймворка. Тоже из одной строки кода выдал г*вно на несколько килобайт. При чем из "мастеров вебпака" никто так и не смог сказать, как это оптимизировать. Это для них был "абсолютно нормальный подход" и "умный сборщик". Ну реально. Он сует в бандл все подряд.
Я не буду спорить с тем, что вебпак легче настраивается, по нему дофига видео и готовых тулзов больше, чем для роллап. Роллап требует чуть больше внимания при тюнинге и чуть больше гуглинга на старте. Но после того, как я увидел, как он собирает проект, выкидывая все лишнее и создавая на выходе прозрачный код, желания к вебпаку возвращаться желания нет никакого. В моей системе ценностей, это глубокое легаси, которое ещё актуально только благодаря прокрастинации рынка и поддержке корпораций
Через сдн гзипнутый бандл мб а не просто минивицированный
источник

A

Alexander in Svelte [svelt]
Igor Filippov
Через сдн гзипнутый бандл мб а не просто минивицированный
не, я его по ссылке открывал напрямую в браузере и скачивал. Там был обычный js-файл без минфикации
источник

A

Alexander in Svelte [svelt]
Alexander
не, я его по ссылке открывал напрямую в браузере и скачивал. Там был обычный js-файл без минфикации
впрочем, было давно. Может, что-то уже и не так помню. Но вообще сам факт, что вебпак тащит в сборку всю либу вместо того, чтобы взять только то, что необходимо
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Mikluha Mclay
Всем привет. Есть родительский и дочерний компонент. Из дочернего экспортирована переменная foo. Нужно инициировать срабатывание этого выражения $: foo && changed(); в дочернем компоненте, не изменяя значение foo в родительском? Чтобы не делать в родительском _foo = foo; foo = 0; foo = _foo :)
так просто не юзай bind:
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
тогда если в дочернем foo изменилась, родительский об этом не узнает
источник

MM

Mikluha Mclay in Svelte [svelt]
Pavel 🦇 Malyshev
тогда если в дочернем foo изменилась, родительский об этом не узнает
так foo меняется в родительском и надо, чтобы дочерний об этом знал.
источник