Size: a a a

2020 September 16

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Марк Танащук
Можно вопрос задать?
feel free
источник

МТ

Марк Танащук... in Svelte [svelt]
Для неиспользуемых пропсов компилятор рекомендует использовать export const variableName

Просто писать export const variableName; нельзя, нужно что то присваивать.

Но даже если писать export const variableName = []; то сообщение

<Component> was created with unknown prop 'variableName'

не пропадает
источник

МТ

Марк Танащук... in Svelte [svelt]
Зачем вообще export const существует и как для неиспользуемых пропсов кроме редактирования роллапа нормально убирать сообщение о неиспользуемом пропсе?
источник

МТ

Марк Танащук... in Svelte [svelt]
И еще небольшой вопросик.

Мне необходимо получить нодлист через document.querySelector после того как each отрендерится.

Я сейчас написал костыльновато через таймаут:

setTimeout(() => {
 nodes = document.querySelectorAll('.productCard');

 // Работа с nodes
}, 1);

И хотелось бы узнать как по svelte-way из родителя подождать пока each отрендерит итерируемый массив и только после этого отработать qSA
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Марк Танащук
Зачем вообще export const существует и как для неиспользуемых пропсов кроме редактирования роллапа нормально убирать сообщение о неиспользуемом пропсе?
Я ничего не убираю. Константные пропсы нужны для того, чтобы компонент мог публиковать неизменяемые значения.
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Марк Танащук
И еще небольшой вопросик.

Мне необходимо получить нодлист через document.querySelector после того как each отрендерится.

Я сейчас написал костыльновато через таймаут:

setTimeout(() => {
 nodes = document.querySelectorAll('.productCard');

 // Работа с nodes
}, 1);

И хотелось бы узнать как по svelte-way из родителя подождать пока each отрендерит итерируемый массив и только после этого отработать qSA
прям именно NodeList нужен? 🤔
источник

МТ

Марк Танащук... in Svelte [svelt]
Pavel 🦇 Malyshev
Я ничего не убираю. Константные пропсы нужны для того, чтобы компонент мог публиковать неизменяемые значения.
Компилятор такое предупреждение выдает :(
источник

МТ

Марк Танащук... in Svelte [svelt]
Pavel 🦇 Malyshev
прям именно NodeList нужен? 🤔
Да
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Марк Танащук
Компилятор такое предупреждение выдает :(
дефолтное значение задай
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
видел такие сообщения много раз, но видимо у меня код такой, что не часто их встречаю)
источник

МТ

Марк Танащук... in Svelte [svelt]
Все еще осталось сообщение
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Марк Танащук
Да
Тогда наверное через экшн на родителе будет нормально
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
вообще самый svelte-way:

let nodes = [];

{#each items as item, i}
 <div bind:this={nodes[i]}>
{/each}
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Марк Танащук
Все еще осталось сообщение
мне кажется это какое-то не правильное поведение, если значение по-умолчанию задано. Возможно либо есть ишус на этот счет, либо какое-то обоснование в доках.
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Сам такие сообщения встречаю редко, видимо потому что задаю пропсы )))
источник

МТ

Марк Танащук... in Svelte [svelt]
Pavel 🦇 Malyshev
Сам такие сообщения встречаю редко, видимо потому что задаю пропсы )))
Если бы можно было контролировать какие пропсы в деструктуризированной переменной нужно игнорировать...
источник

МТ

Марк Танащук... in Svelte [svelt]
Было бы чистенько в консоли, а так либо захламлять атрибуты компонентов, либо терпеть в консоли ошибки об неиспользуемых пропсах =\
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Марк Танащук
Если бы можно было контролировать какие пропсы в деструктуризированной переменной нужно игнорировать...
Вообще, кажется был разговор о том, что опциональные пропсы должны юзаться через $$restProps
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Не уверен что это правильно, но видимо так
источник

PM

Pavel 🦇 Malyshev in Svelte [svelt]
Мне кажется было бы логичным ругаться если пропс не передан и при этом ему не задано значение по умолчанию
источник