Size: a a a

2020 April 01

О

Олег in Svelte [svelt]
А вот подскажите, так вообще имеет смысл делать?
У меня есть lightbox-компонент, в нём куча инпутов, чекбоксов, полей, datepicker, timepicker и прочего, всё это я реализовал через компоненты, полчучилось что-то тип такого:
  <div class="lightbox_body">
   <Input
     className="mb-20"
     name="eventName"
     label="Title"
     on:change={getEventName}
      />
   <Row className="mb-20" title="Time">
     <Datepicker selected={selectedDate} />
     <Timepicker id="start" />
     <span class="lightbox_innerText">to</span>
     <Datepicker selected={selectedDate} />
     <Timepicker id="finish" />
   </Row>
   <Row className="mb-20">
     <Checkbox
       label="All day"
       checkboxBackgroundImage="./codebase/img/check-black.svg"
       bgPosition="-1px -1px" />
     <Select className="ml-40" id="repeat" data={SelectConfig} />
   </Row>
   <Row title="Calendar" className="mb-20">
     <SelectEventType data={checkboxOptions} bind:value={text} />
   </Row>
   <Row className="mb-20" title="Description">
     <Textarea {...textareaConfig} />
   </Row>
   <Row withoutTitle>
     <Button
       type="button"
       value="delete"
       className="button--del"
       css="width: 68px;margin-right: auto;" />
     <Button type="button" value="reset" css="width: 68px;magin-left: auto" />
     <Button
       type="button"
       value="save"
       className="button--submit"
       css="width: 68px;"
       />
   </Row>
 </div>
источник

О

Олег in Svelte [svelt]
Очень динно вышло, но весь вопрос в том так вообще делают? Есть смысл в таком подходе, Или проще сделать лайтбокс компонентом, а все элементы формы жахнуть обычным HTML?
источник

A

Arushwl in Svelte [svelt]
А зачем компоненты изначально делал?
источник

A

Arushwl in Svelte [svelt]
У меня вот траблы с bind:group и я без компонентов сделал форму. Пока траблы...
источник

A

Arushwl in Svelte [svelt]
По коду похоже на uikit...
источник

DD

Dmitry Dead in Svelte [svelt]
Сори за оффтоп.
@PaulMaly Паш, можешь подсказать, ты вот в этой статье (https://habr.com/ru/post/469411/), в разделе "Ошибки" демонстрируешь предупреждение, как ты его настроил? Могу я как-то через вебпак получить такой же вывод?
источник

B

Bulat in Svelte [svelt]
это в репл такие ошибки выдаются
источник

B

Bulat in Svelte [svelt]
хотя в vscode тоже должно показывать
источник

MF

Max Frai in Svelte [svelt]
Почему для чтения стора нужно добавлять приставку $, а для вызова метода в кастомном сторе не нужно?
источник

DK

Dmitry Kutran in Svelte [svelt]
Max Frai
Почему для чтения стора нужно добавлять приставку $, а для вызова метода в кастомном сторе не нужно?
это замена вызова store.subscribe(value => value) и автоматическая отписка при анмаунте компонента
источник

MF

Max Frai in Svelte [svelt]
Что-то как-то вроде простая идея этих сторов, но как нужно встраивать в логику приложения тяжело сходу вникнуть
источник

DK

Dmitry Kutran in Svelte [svelt]
Max Frai
Что-то как-то вроде простая идея этих сторов, но как нужно встраивать в логику приложения тяжело сходу вникнуть
если самому попробовать его реализацию написать - сразу все станет понятно, там ничего сложного нет
источник

DK

Dmitry Kutran in Svelte [svelt]
массив слушателей, который заполняется при subscribe, методы set/update которые тригирят все вышеописанные слушатели и функция unsubscribe, возвращаемая subscribe
источник

DK

Dmitry Kutran in Svelte [svelt]
$: - при использовании со стором грубо говоря делает при компиляции const unsub store.subscribe(value => /*expression*/) и вызывает unsub, когда компонент анмаунтится
источник

MF

Max Frai in Svelte [svelt]
Dmitry Kutran
$: - при использовании со стором грубо говоря делает при компиляции const unsub store.subscribe(value => /*expression*/) и вызывает unsub, когда компонент анмаунтится
Получается, что в “реактивном” выражении необязательно добавлять $ в имя стора?
источник

DK

Dmitry Kutran in Svelte [svelt]
Max Frai
Получается, что в “реактивном” выражении необязательно добавлять $ в имя стора?
можно store.subscribe метод использовать, но $ - куда удобнее запись
источник

MF

Max Frai in Svelte [svelt]
В логике обычно пишу что-то такое, когда нужно подписаться на обновление стора
$: articleChanged($ExactArticleStore);
 function articleChanged(storeData) {
    // …
 }
источник

MF

Max Frai in Svelte [svelt]
Это правильный подход?
источник

DK

Dmitry Kutran in Svelte [svelt]
да
источник

DK

Dmitry Kutran in Svelte [svelt]
просто, описал, как это внутри работает и как можно использовать ВНЕ свелтовских компонентов
источник