Size: a a a

2020 November 05

M

Mихаил in Svelte [svelt]
Vitaliy Fain
А как такое происходит если банально на реакте выходит кода больше
Ну потому что в компе на реакте много оверхеда, особенно заметного на маленьких компонентах, на больших компонентах х10 количеством логики уже вклад этих дополнительных конструкций становится меньше а бизнес-логики - больше
источник

VF

Vitaliy Fain in Svelte [svelt]
<script>
   let value = '';
</script>
<input bind:value={value}/>
{value}
источник

M

Mихаил in Svelte [svelt]
Vitaliy Fain
<script>
   let value = '';
</script>
<input bind:value={value}/>
{value}
Отдельный вопрос что у них там за цифры - это надеюсь относительные какие-то единицы потому что 150 строк на кнопку Я не понял 🤷
источник

VF

Vitaliy Fain in Svelte [svelt]
да там человек на хабре писал проект выложил стату
источник

VF

Vitaliy Fain in Svelte [svelt]
да и банально в реакте мне лично не нравятся эти обертки
источник

VF

Vitaliy Fain in Svelte [svelt]
Mихаил
Ну потому что в компе на реакте много оверхеда, особенно заметного на маленьких компонентах, на больших компонентах х10 количеством логики уже вклад этих дополнительных конструкций становится меньше а бизнес-логики - больше
В этом же минус, зачем городить зоопарк в одном компоненте если можно разбить на микро компоненты
источник

VF

Vitaliy Fain in Svelte [svelt]
это конечно дело вкуса, но я люблю разбивать задачи на микро задачи и потом собирать в кучу
источник

BB

Bohdan Bessonov in Svelte [svelt]
Vitaliy Fain
а что делает класс вообще?
Если чуть больше про предметную область,

Есть ящик. В ящике есть отсеки. в отсеках есть мандарины или апельсины (в разных количествах). Можно перемещать фрукты между отсеками в пределах ящика. Можно перемещать фрукты между ящиками. Ящики разных размеров (разное количество отсеков), да и количество ящиков может меняться.

Ящик рисуется как свелт компонент, а данные о том сколько апельсинов или мандаринов в каждом отсеке приходят снаружи (не суть как, будем считать что есть дикт/массив {номеротсека: че в нем лежит}).

Пока был один ящик (один компонент в котором я все собрал) все было хорошо, мандарины перекладывались, все ок

как только стало несколько ящиков - мне захотелось застрелиться


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

VF

Vitaliy Fain in Svelte [svelt]
Особенно хорошо такой подход сочетается с диаграммой с которой я начинаю строить компонент
источник

AP

Alexander Ponomarev in Svelte [svelt]
Vitaliy Fain
В этом же минус, зачем городить зоопарк в одном компоненте если можно разбить на микро компоненты
удачи с микрокомпонентами на свелте =) компонент в свелте слишком сильно отличается от дом элемента
источник

AP

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

AK

Andrey Katrusha in Svelte [svelt]
А как то можно в самом методе получать стору? Бо я че-то не понял аак нет работает
источник

VF

Vitaliy Fain in Svelte [svelt]
Bohdan Bessonov
Если чуть больше про предметную область,

Есть ящик. В ящике есть отсеки. в отсеках есть мандарины или апельсины (в разных количествах). Можно перемещать фрукты между отсеками в пределах ящика. Можно перемещать фрукты между ящиками. Ящики разных размеров (разное количество отсеков), да и количество ящиков может меняться.

Ящик рисуется как свелт компонент, а данные о том сколько апельсинов или мандаринов в каждом отсеке приходят снаружи (не суть как, будем считать что есть дикт/массив {номеротсека: че в нем лежит}).

Пока был один ящик (один компонент в котором я все собрал) все было хорошо, мандарины перекладывались, все ок

как только стало несколько ящиков - мне захотелось застрелиться


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

BB

Bohdan Bessonov in Svelte [svelt]
Vitaliy Fain
Не совсем понятно это было буквально или ради примера и что это вообще игра или какой-то сборщик) Ну я так понял от экзепляра компонента у вас собирается массив данных и внутри компонента идет общение с внешним миром
почти буквально
источник

S

System404 in Svelte [svelt]
Alexander Ponomarev
если в реакте микрокомпонент может просто спредить пропсы и эвенты в дом элемент 1 строчкой, то в свелте заспредить эвенты очевидным образом неполучится даже=)
А что мешает для эвентов обернуть в div? А если нужно props прокидывать в элемент, то нахер такой компонент нужен
источник

AP

Alexander Ponomarev in Svelte [svelt]
System404
А что мешает для эвентов обернуть в div? А если нужно props прокидывать в элемент, то нахер такой компонент нужен
действительно что мешает, наверное то что не все эвенты всплывают и что currentTarget будет другой и то что селекторы .a > .b развалятся
источник

AP

Alexander Ponomarev in Svelte [svelt]
ну и зачем лишний элемент если можно без него и где хваленая экономия строчек? =)
источник

VF

Vitaliy Fain in Svelte [svelt]
не совсем ясно так как не видно кода, по одному примеру и то не понятному делать выводы
источник

AP

Alexander Ponomarev in Svelte [svelt]
Vitaliy Fain
не совсем ясно так как не видно кода, по одному примеру и то не понятному делать выводы
function Link(props) {
     return <a {...props} rel="noopener"/>
}

повторите на свелте =)
источник

S

System404 in Svelte [svelt]
Alexander Ponomarev
действительно что мешает, наверное то что не все эвенты всплывают и что currentTarget будет другой и то что селекторы .a > .b развалятся
Не всплывают наверное эвенты контролов типа input?
источник