使用反应导航,从导航器中的屏幕导航到不同导航器中的屏幕.
如果我有以下导航器结构:
如何从嵌套导航器2下的屏幕D转到嵌套导航器1下的屏幕A?现在,如果我尝试navigation.navigate从屏幕D屏幕A,将会出现一个错误,表示它不知道屏幕A,只有屏幕C和D.
我知道这已被要求以各种形式在本网站上的各个地方以及GitHub上(https://github.com/react-navigation/react-navigation/issues/983,https://github.com/react-导航/ react-navigation/issues/335#issuecomment-280686611)但是对于那些基本的东西,缺乏明确的答案并滚动浏览数百个GitHub评论搜索解决方案并不是很好.
也许这个问题可以编写如何为每个遇到这个非常常见问题的人做这件事.
我正在尝试在使用AES的JS中使用加密库。如何生成安全的秘密密钥,这样我就不必在代码中对密钥进行硬编码(攻击者可以很容易地看到和使用它)?
注意:
生成后,我将其存储在操作系统提供的安全密钥库中,以便可以将其检索并用于解密信息(iOS和Android,我正在使用React Native)。
使用反应导航。我有一个 StackNavigator
const Stack = StackNavigator( // eslint-disable-line new-cap
{
List: {
screen: DrugPage,
},
Create: {
screen: DrugCreate,
},
},
{
initialRouteName: 'List',
}
);Run Code Online (Sandbox Code Playgroud)
第一个屏幕是实体列表,第二个屏幕是创建将添加到列表中的新实体。第一个列表屏幕在导航栏中有一个指向“添加实体”的很好的链接,该链接转到“创建”路线。创建实体后,我使用 navigation.navigate 返回到 List 路由。这会将创建实体屏幕留在堆栈上,然后我的列表屏幕上的导航栏中会出现一个后退按钮。在成功创建实体后,我不希望“创建实体”屏幕保留在堆栈中——我希望它被销毁,因此“创建”屏幕不会堆积在我不需要的堆栈中,因此我没有列表屏幕上我不想要的后退按钮。我想过使用 StackNavigator 但这并没有给你一个漂亮的顶部导航栏(在 iOS 中)。有什么建议吗?
我的 React Native 代码使用环境变量来指定它所访问的 API 的 URL,因此我可以在 React-Native js 代码中执行类似的操作:
const endpoint = process.env['API_URL']
当在计算机上运行应用程序时,启动捆绑器时很容易传入环境变量:
API_URL='http://myapiurl.com' react-native start
但是,当我生成发布 apk 时,API_URL 未设置。
我应该在 gradle 构建(或其他地方)中的哪里进行配置,以便为生成的发布 apk 正确设置 API_URL?