169 похожих чатов

Доброго всем дня/вечера! Начал изучать Svelte совсем недавно и решил изучать,

создавая небольшой проект.

Логику приложения написал, используя ООП, используя объекты класса для предоставления данных для приложения. Один из классов инициализируется один раз. Этот объект делается доступен с использованием store.

Столкнулся с проблемой отсутствия реактивности.

Например, есть класс:

class A {
constructor() {
this._items = [];
}

addItem(item) {
this._items.push(item);
}

get items() {
return this._items;
}
}

Я инициализирую объект этого класса и передаю его в writable store.
Если в условном компоненте_1 я использую метод addItem(), то свойство items обновляет значение, которое необходимо реактивно предоставлять компоненту_2.

На деле же, данные в объекте действительно обновляются, но реактивности в компоненте_2 не происходит. После создания компонента не происходит rerender.

Я понимаю, что вопрос глупый, и что реактивность в Svelte запускается присвоением, например. Но всё же, возможно ли достичь реактивности, используя один и тот же объект класса?

На данный момент решил проблему, создав отдельно store для необходимого свойства объекта, обновляя его через метод set. Однако, хотелось бы иметь доступ ко всему объекту.

Заранее спасибо за помощь!

1 ответов

12 просмотров

В чем проблема просто поменять push на spread?

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта