Size: a a a

React Native — русскоговорящее сообщество

2020 March 24

GB

Gena Black in React Native — русскоговорящее сообщество
Чтоб добавить, надо сперва прочитать данные, изменить (в вашем случае добавить элемент) и затем записать.
источник

GB

Gena Black in React Native — русскоговорящее сообщество
Или более "широким" циклом... сразу в эту ф-цию передавать все данные, всю коллекцию... особенно если она нужна в приложении (к примеру есть список всех тудушек где-то)
источник

KG

Kirill Galimov in React Native — русскоговорящее сообщество
Gena Black
Чтоб добавить, надо сперва прочитать данные, изменить (в вашем случае добавить элемент) и затем записать.
Нарыл на stackoverflow вот такую вещь:
var countries = AsyncStorage.getItem('countries');
AsyncStorage.setItem('countries', countries += JSON.stringify(country));
источник

KG

Kirill Galimov in React Native — русскоговорящее сообщество
Это то, что мне нужно?
источник

GW

George Wiseman in React Native — русскоговорящее сообщество
Всем привет

У меня такая ситуация

react-navigation 4.x

BottomTab
 -> StackA
     -> Screen 1
 -> StackB
      -> Screen2
      -> Screen 3


Как можно из Screen1 вызывать Sceen 1 или Screen 2 всегда верхними (так, чтобы клик по ссылке co Screen 1 не показывал предыдущий нажатый экран из StackB, перед тем как нужный экран показать)

Я попробовал navigation.reset, но он вообще похоже в рамках BottomTab ищет
источник

GB

Gena Black in React Native — русскоговорящее сообщество
George Wiseman
Всем привет

У меня такая ситуация

react-navigation 4.x

BottomTab
 -> StackA
     -> Screen 1
 -> StackB
      -> Screen2
      -> Screen 3


Как можно из Screen1 вызывать Sceen 1 или Screen 2 всегда верхними (так, чтобы клик по ссылке co Screen 1 не показывал предыдущий нажатый экран из StackB, перед тем как нужный экран показать)

Я попробовал navigation.reset, но он вообще похоже в рамках BottomTab ищет
А ключи уникальны у скринов и стеков? Если да, то по идее должно сработать просто navigation.navigate('Screen2') типа она найдет ближайший Screen2 и запушит его в пустой StackB или размотает стек до него, если он там уже есть... (по крайней мере, если я правильно понял их идею по докам)
источник

GW

George Wiseman in React Native — русскоговорящее сообщество
Gena Black
А ключи уникальны у скринов и стеков? Если да, то по идее должно сработать просто navigation.navigate('Screen2') типа она найдет ближайший Screen2 и запушит его в пустой StackB или размотает стек до него, если он там уже есть... (по крайней мере, если я правильно понял их идею по докам)
Я делаю со Screen1 -> navigate ('Screen 2')
затем возвращаюсь на Screen 1 и делаю
Screen 1 -> Navigate ('Screen 3').  Или тэпаю на таббар

В этот момент можно увидеть как мелькает Screen2 перед тем как появиться Screen 3
источник

GW

George Wiseman in React Native — русскоговорящее сообщество
Ваще не гуд
источник

KG

Kirill Galimov in React Native — русскоговорящее сообщество
В чем проблема?
saveData(id, medicineName) {
       let note = { id, medicineName }
       let noteList = AsyncStorage.getItem('noteList');
       AsyncStorage.setItem('noteList', noteList += JSON.stringify(note));
   }

Добавляя новый элемент, предыдущие элементы выводятся некорректно.
источник

VO

Vitalii Obideiko [Obidos] in React Native — русскоговорящее сообщество
Кто-то юзел адекватную либу для https://developer.android.com/guide/playcore/in-app-updates#java ?
Интересно есть ли вобще обертки уже
источник

AS

Alexander S in React Native — русскоговорящее сообщество
Kirill Galimov
В чем проблема?
saveData(id, medicineName) {
       let note = { id, medicineName }
       let noteList = AsyncStorage.getItem('noteList');
       AsyncStorage.setItem('noteList', noteList += JSON.stringify(note));
   }

Добавляя новый элемент, предыдущие элементы выводятся некорректно.
Может потому, что операции асинхронные? Set and get асинхронные, попробуйте await


https://reactnative.dev/docs/asyncstorage
источник

KG

Kirill Galimov in React Native — русскоговорящее сообщество
На тостере мне сделали следующее замечание. Дело не в нем?
источник

AS

Alexander S in React Native — русскоговорящее сообщество
Складывать строки можно, смотря что вы складываете )
источник
2020 March 25

A

Alexander in React Native — русскоговорящее сообщество
РебяТ, вопрос по react-navigation.
Куда делся createSwitchNavigator в последней версии?
источник

VO

Vitalii Obideiko [Obidos] in React Native — русскоговорящее сообщество
Alexander
РебяТ, вопрос по react-navigation.
Куда делся createSwitchNavigator в последней версии?
его теперь можно самому через if/switch сделать же
источник

VO

Vitalii Obideiko [Obidos] in React Native — русскоговорящее сообщество
Gena Black
ну приехали... а вы документацию читали? Свитч изначально был нужен только потому, что надо было как-то заставить статически-сконфигуренный навигатор от 4.x отрендерить вот такое:
const MySwitch: React.FC = props => {
 switch (props.router.currentScreenName) {
 case 'Screen1':
   return <Screen1 />
 case 'Screen2':
   return <Screen2 />
 }
)


Теперь, очевидно, свитч не нужен, потому что эти несколько строк кода отлично пишутся самостоятельно.
@kr_alexander вот тут обсуждали)
источник

A

Alexander in React Native — русскоговорящее сообщество
источник

DT

Daniil Tchernyavsky in React Native — русскоговорящее сообщество
источник

SA

Sherzod Aripjanov in React Native — русскоговорящее сообщество
Kirill Galimov
В чем проблема?
saveData(id, medicineName) {
       let note = { id, medicineName }
       let noteList = AsyncStorage.getItem('noteList');
       AsyncStorage.setItem('noteList', noteList += JSON.stringify(note));
   }

Добавляя новый элемент, предыдущие элементы выводятся некорректно.
async saveData(id, medicineName) {
       let note = { id, medicineName }
       let noteList = await AsyncStorage.getItem('noteList');
       await AsyncStorage.setItem('noteList', JSON.stringify([...noteList, note]));
   }
источник

A

Alexander in React Native — русскоговорящее сообщество
Как сделать минусовой margin? У меня контент находится в блоке который имеет padding, и один блок я хочу растянуть на весь экран, как подойти к этой ситуации?
источник