0

我正在尝试编写功能性无状态组件,但这样做遇到了问题。我包装Navigator在一个以 props 作为参数的函数中(这些是任意的)。被包装的组件当前定义如下,因为它在该组件的减速器中使用。

export const Navigator = StackNavigator(screens, navigatorConfig);

const NavigatorView = (props) => {
    return (<Navigator screenProps={{ ...props }}/>);
};

这可行,但理想情况下,我希望能够将 实例Navigator化为函数中的局部变量NavigatorView,并在那里导出,以便我可以灵活地在实例化时设置哪些属性(如下所示)。

const NavigatorView = (myArg, props) => {
    const Navigator = StackNavigator(screens, myArg);
    return (<Navigator screenProps={{ ...props }}/>);
};

这里的问题如下,我怎样才能导出Navigator在reducer中使用)同时保持它包装在一个函数中?我试过了module.exports = Navigator;export const Navigator...但它们不起作用。谢谢。

4

1 回答 1

2

如何创建一个返回函数的函数?

export const generateNavigator = (screens, navigatorConfig) => 
  StackNavigator(screens, navigatorConfig);

const NavigatorView = (myArg, props) => {
    const Navigator = generateNavigator(screens, myArg);
    return (<Navigator screenProps={{ ...props }}/>);
};
于 2017-03-28T23:04:56.667 回答