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

Ребятки, подсобите пожалуйста. Уже пар дней мучаюсь. @gblack9 накатал

мне пример, у него все работает.. я сделал как он, у меня не работает... https://github.com/dimafrombatumi/RecipeMeApp/tree/experimental суть проблемы: если я в сторе меняю данные и сохраняю файл при запущенном приложении оно рендерится, но данные не приходят в флетлист-он пуст... Что я сделал не так...? стор в файле recipe.js. Флет лист в файле- MasonryList.js

15 ответов

23 просмотра

Попробуй на stackOverflow вопрос задать

стор и не обновится с хотрелоадом, ты же делаешь export const recipes = new Recipes()

Dmitry-Kozlov Автор вопроса
Trin Zotoff
стор и не обновится с хотрелоадом, ты же делаешь e...

такс.. а что нужно экспортировать тогда?

Dmitry Kozlov
такс.. а что нужно экспортировать тогда?

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

Dmitry-Kozlov Автор вопроса
Trin Zotoff
не, ты всё правильно делал, просто если меняешь чт...

но представь, если у пользователей запушено приложение, и в этот момент я меняю что-то в бд.. Значит у них оно ляжет так же как у меня на видео? Или я что-то не так понимаю?

Dmitry Kozlov
но представь, если у пользователей запушено прилож...

нет, т.к. твой класс не поменяется. в твоем итоговом сторе, в getRecipies у тебя будет запрос к апи. ты добавил в базу, приложение обратилось к апи, наполнило рецепты, но код класса то не поменялся

Dmitry-Kozlov Автор вопроса
Trin Zotoff
нет, т.к. твой класс не поменяется. в твоем итогов...

понял! Но почему тут у @gblack9 не падает приложение когда меняешь в сторе? https://snack.expo.dev/@vovkasm/upbeat-orange

Dmitry Kozlov
понял! Но почему тут у @gblack9 не падает приложен...

хз ) может потому, что всё в одном файле

Dmitry-Kozlov Автор вопроса
Trin Zotoff
хз ) может потому, что всё в одном файле

мне тоже кажется что из-за того что он прямо импортирует стор.. а я через контекст...

Dmitry-Kozlov Автор вопроса
Trin Zotoff
хз ) может потому, что всё в одном файле

Я сейчас импортнул стор прямо без контекста и хотрелоад заработал! Интересно как можно это сделать с контекстом...

Вот держи другой, там твоей проблемы нет – https://snack.expo.dev/@vovkasm/mobx-sample. Ну почти. Я читал ваши переписки, читал и долго не мог понять что же нужно... Для меня fast refresh просто всегда являлся приятным дополнением, но если не работал или глючил – "не беда"... И использую я его лишь при верстке, а т.к. из компонентов вытащена вся логика (вот прям максимум), то и глючил fast refresh (а перед этим HMR редко). Ну да, когда я менял что-то в глобальных, как его, "сторах" по вашему, то приходилось перезапускать приложение. Но фишка в том, что это относительно редкий для меня кейс. Вся разработка моделей происходит без участия реакта через тесты, мне даже видеть приложение не надо. Мне даже не надо чтоб был какой-то там эмулятор запущен, чтоб выполнить 50-60% кода приложения ))) А теперь более интересное. Ваша проблема не в том, что вы меняете данные, а в том что в одном файле с этими данными определен контекст. Именно с этим у fast refresh какой-то глюк, не знаю какой, мне это не интересно. Но суть в том, что fast refresh перегружает весь файл. Проверить легко – в моем примере выше данные модели лежат в одном файле и её можно легко менять, всё рефрешится. А вот создание контекста в другом файле и если его хоть чуть изменить, то всё... ошибка. 😉

Dmitry-Kozlov Автор вопроса
Gena Black
Вот держи другой, там твоей проблемы нет – https:/...

спасибо за ваше время и ответ! Я ни на что не претендую(какую-то свою правоту, или глубокие знания) мне ещё далеко до вашего опыта.. и честно скажу, что не все понимаю о чем вы говорите.. Но +- понял.. Посмотрел ваш код и есть вопрос: в файле где контекст создается, там вы его как-то по другому(не как обычно это в реакте делается) создаёте.. ну т.е. storeProvider, consumer, useStore()..и в этом же файле ещё import { makeAutoObservable } from "mobx"; -для чего он нужен именно в файле контекста? извините что столько вопросов, хочу хорошо понять все это. Спасибо!

Dmitry Kozlov
спасибо за ваше время и ответ! Я ни на что не прет...

Импорт makeAutoObservable? Просто забыл убрать при рефакторинге (все эти файлы же были одним до этого) Не нужен он там, удалил 😄

Dmitry-Kozlov Автор вопроса
Dmitry Kozlov
а по-поводу создания контекста?))

А в чем вопрос? Вы сказали, что я немного не так его создаю, как обычно это в реакте делается. Но я его как раз создаю именно так, как в документации описано: вызываю createContext, и использую компоненты, что он вернул. Заодно, чтоб уменьшить кол-во сущностей в основном коде сделал хук, но это чисто чтоб не писать непонятную конструкцию с useContext(ctx) по всему коду – у вас же будут сотни компонентов, которым стор нужен. В общем, с моей точки зрения, я как раз там "всё как в учебнике" использую... А что именно смутило/удивило?

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
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
Карта сайта