如何有条件地渲染输入的附件视图?

时间:2019-10-14 15:26:55

标签: react-native expo

我正在尝试有条件地渲染用户打结时出现在键盘上方的输入栏。除非用户要添加某些内容,否则我不想显示此输入栏。因此,他们点击了应该使该组件可见的按钮,然后专注于调出键盘的输入。

这可以按预期工作,除非用户首次打开键盘。什么也没出现。键盘抬起时,有一个空的视图标签,但随后消失了,什么也没有。但是,一旦用户开始键入,它就会出现,然后按预期工作。我不知道为什么它不出现。如果我没有输入任何东西并关闭键盘,则可以在键盘按预期消失之前短暂看到它。

我尝试用async-await和当前语法调用该函数。两者都没有,我一直无法解决。

这里有种点心,可以重现问题,并包含所有相关代码以重现错误。

https://snack.expo.io/@dmargulies/inputaccessoryview-problem

谢谢您的帮助。

2 个答案:

答案 0 :(得分:1)

首先,InputAccessoryView仅在IOS上存在。 我更改了条件渲染流程。 查看:https://snack.expo.io/@djalik/inputaccessoryview-problem

答案 1 :(得分:0)

对于任何寻求跨平台解决方案的人,都有一个软件包:

react-native-keyboard-accessory

注意:我不是作者,只是认为这可能会帮助某些人偷窥。