我正在React中创建一个页面。比如说“联系我们”页面。整个组件必须是可重用的。这样其他团队就可以使用它了。这个组件将有自己的redux存储和使用axios的api调用。
我想确认的是,如果我将这个“联系我们”模块导出为npm包,它对其他团队是否适用?我之所以问这个问题,是因为其他团队的项目会有他们自己的redux存储和axios示例。我认为我们只能在一个应用中有一个redux存储,也许还有一个axios拦截器(尽管我可能对axios的看法是错误的)
有人能帮我吗,在这种情况下可以做些什么?有一件事是肯定的,我将不得不导出这个完整的组件作为npm包。
1条答案
按热度按时间o0lyfsai1#
我要在这里回答给予你更多的细节:假设您的元件如下所示:
关于我们:
这个组件只需要一些道具就可以工作,fetchData函数将是任何redux操作的调度。
因此,在其中一个将要使用组件库的应用程序中,假设它们有自己的存储,您可以这样做。
在您计划使用AboutUs组件的组件中。
这确保了你的组件可以在没有redux的情况下开箱即用,因为你可以显式地使用它而不需要redux依赖,只要传递常规的props,它就可以继续工作。同样,如果你有不同的应用程序要使用它,你可以控制你想使用存储的哪一部分来为这个组件注入props。proptype在这里非常有用,因为我们强制使用了一些道具,以便让开发人员知道我们需要传递什么,以便组件能够正常工作。