TabNavigator 中的动态屏幕数

Dynamic number of screens in TabNavigator

情况

我目前正在为一家杂志编写一个新闻 reader 应用程序,该应用程序在不同类别下以英语和德语发布内容。每种语言的类别数量不同。类别以每种语言的数组形式存储。

CATEGORIES_EN = [
    {
        selector: '*',
        blog: BLOG_EN,
        id: `${BLOG_EN}_*`,
    },
    {
        selector: 'Politics',
        blog: BLOG_EN,
        id: `${BLOG_EN}_Politics`,
    },
    // ... 8 more
];

CATEGORIES_DE = [
    {
        selector: '*',
        blog: BLOG_DE,
        id: `${BLOG_DE}_*`,
    },
    {
        selector: 'Politik',
        blog: BLOG_DE,
        id: `${BLOG_DE}_Politik`,
    },
    // ... 9 more
];

屏幕组件始终相同,但必须以某种方式接收 selectorblog

问题

当语言发生变化时,如何更改屏幕数量?
如何将类别分配给屏幕组件?

环境

反应导航:1.0.0-beta.11
本机反应:0.45.0

Git-问题

https://github.com/react-community/react-navigation/issues/1872

我找到了解决方案并想与您分享:
当某些内容发生更改时,您必须始终重新创建 TabNavigator。

详情请看我的Git-Issue and the referenced issue