问题标签 [react-native-state]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
110 浏览

javascript - 当我点击 navigationOptions 中的按钮时,为什么没有正确设置 React Native 状态?

我有一个 React Native 屏幕/组件,其中导航/标题的左上角有一个菜单按钮。当该按钮被点击时,我想在屏幕/组件本身中创建一个菜单来切换打开和关闭。

不管出于什么原因,按照我现在的设置方式,第一次点击菜单按钮时,菜单会打开,但在那之后,无论我点击多少次按钮,它总是保持打开状态并且不会关闭. 似乎状态没有正确更新或其他东西。

这是我用于菜单切换的基本代码:

我认为这可能是一些关闭问题,但我真的不确定。我添加了一个console.logto toggleMenu,并且该showMenu值始终是false当我进入该函数时,然后将其设置为true,因此菜单不会关闭。

为什么showMenu值总是false,即使在我将setShowMenu其设置为true之后也是如此。有人有想法么?谢谢你。

0 投票
3 回答
493 浏览

typescript - React Native:如何从具有嵌套 json 数组的状态中检索数据并映射该状态以获取具有给定 id 的特定值

我有一个反应本机选择器,它有一组对象,我从我的 API 中获取并保存到属性下的状态。 这是我获取的数据的屏幕截图

当我选择属性下拉列表时,我需要从 _id 中找到数组中的正确对象。我需要使用 Javascript 逻辑来完成此操作,而无需再次调用我的服务器。这是我在下拉菜单中的代码

我需要在这个函数中编写我的代码

0 投票
1 回答
39 浏览

react-native - 在 React 状态下更新数组对象

我有一个状态,

我想用事件的 id 更新特定座位号的值。

0 投票
1 回答
71 浏览

react-native - 在 React Native 中操作全局状态变量

我对本机反应和开发一个非常简单的游戏还很陌生。该游戏通过使用底部标签导航由三个不同的标签组成。

这是我用于此游戏的不同选项卡。

屏幕一: https ://i.stack.imgur.com/R6TNm.png

屏幕 2: https ://i.stack.imgur.com/o21rh.png

屏幕 3: https ://i.stack.imgur.com/argoi.png

我的主要问题是:如果有人按下 Screen2 中的 Weapon1 按钮,它将调用在我的 Game.js 文件中定义的 WeaponOne() 函数。它应该将我的全局状态变量enemyBar 的当前状态更新为enemyBar =enemyBar - 0.1 并相应地更新屏幕1 和2 中的UI。同样,如果用户在屏幕3 中按下QuickFix,它将调用quickFix() 并更改状态变量从 hpBar 到 hpBar = hpBar + 0.1 并更新屏幕 1 和 3 的 UI。我将如何操作这些全局状态变量?

在此先感谢您的帮助。

全局状态参考:React Native 中的全局状态

全球.js

游戏.js

0 投票
0 回答
626 浏览

react-native - 使用 onViewableItemsChanged 反应原生 FlatList 的意外行为

我正在尝试使用功能组件实现 FlatList onViewableItemsChanged。我想在用户滚动时更改状态。最初,我写了这个

但我遇到了一个错误

不变违规:不支持动态更改 onViewableItemsChanged

任何状态更改时的 FlatList ScrollView 错误 - 不变量违规:不支持动态更改 onViewableItemsChanged

这个答案建议使用 useRef 来解决这个问题所以,我把代码改成了这个。

但现在的问题是

setActiveAlphabet(viewableItems.viewableItems[0].index)

不工作,它没有效果。

0 投票
1 回答
20 浏览

react-native - 在上下文中设置对象状态

我是 React 和 React Native 的新手,我正在尝试理解一些事情。我希望有人可以向我解释我在这里做错了什么。我有一个对象,我试图用 onChangeText 设置自变量的值。该对象通过

在表单域中

并且在上下文文件中

我正在尝试更新此状态

我希望这足以分析。任何帮助,将不胜感激

0 投票
0 回答
97 浏览

react-native - 为什么导航到主页时登录页面不重置状态?

我正在使用 react-navigation,当用户登录时,它会重定向到主屏幕。但是,当我返回登录时,我可以看到状态未重置。基本上,它保持状态与我导航到主页时离开的状态相同。

案例说明:点击登录时,设置loading为true并进入home屏幕。在Home屏幕中单击Back重定向到Login,其中loading仍设置为 True。

这似乎很奇怪,从来没有经历过。我认为反应设置负载状态。

0 投票
2 回答
1030 浏览

reactjs - TextInput onChangeText 设置 useState 值在 React Native Testing with Enzyme 中不起作用

如果 TextInput 等于“”,我想测试用户不应该导航到任何其他屏幕。

我试图让控制台日志更正确地理解,但现在的问题是,在input.simulate("changeText", "any@email.com");正确发生之后,控制台日志说来自测试的传入值是“any@email.com”,但是在setValue(text);发生之后,console.log 说 useState 值是“ ”。

为什么状态没有改变?我需要用 更新包装器.update()吗?

这是我的 React Native 代码:

控制台日志:

测试代码:

0 投票
0 回答
79 浏览

react-native - 在文本输入中自动完成后,React Native 不会更新状态

我正在使用以下代码开发消息传递应用程序:

在 iOS 模拟器上,当我输入一些没有自动完成的文本并按下发送按钮时,bodyText 会按预期更新。如果我对最后一个单词使用自动完成并按 Enter,则在自动完成之前使用 inputText 更新 bodyText。我怎样才能解决这个问题?

0 投票
0 回答
218 浏览

reactjs - React Native:PanGestureHandler 在更改状态后中断

我在一个音乐播放器应用程序的 PanGestureHandler 中包装了一个 FlatList。PanGestureHandler 允许用户在播放器上向下滑动以将其最小化,Flatlist 显示与用户可以左右滑动的歌曲相对应的图像轮播。这很好用,但是一旦我通过调用 onMomentumScrollEnd=scrollToActiveIndex() 在歌曲组件内的歌曲(FlatList 项目)之间移动后尝试更改状态,PanGestureHandler 就会崩溃。更改状态后,PanGestureHandler 停止响应(无法向下滑动),嵌套的 Flatlist 也不允许在项目之间滑动。请帮助我了解如何解决此问题。谢谢 :)