如何将angularjs服务迁移到Redux?

阿斯温·K

我正在将AngularJS 1.4应用程序迁移到React。我使用react2angular将一些指令迁移到React组件现在,我处于将服务迁移到Redux的阶段。我不想使用ng-redux有人尝试过吗?

我正在尝试逐页迁移我的angularJS应用程序。我已经将页面的模板代码迁移到React组件,但是我的控制器使用了很少的angularJS自定义服务。我想将整个页面迁移到react和redux并使用React router渲染该页面。我应该如何进行?

Konstanitnos Schoinas

好了,您需要考虑一些事项。这个过程将需要一些时间,您需要耐心等待。

  1. 让我们先谈谈组件迁移。为此,我们使用react2angular库。我们将所有的react代码写入a内component.js,然后按照库中的描述为角度创建包装。我相信这很简单。

  2. 转到页面。为此,您可以使用一个名为connected-react-router-> https://www.npmjs.com/package/connected-react-router的npm模块当您通过设置这样做,你也可以在商店react-reduxredux模块。

现在,您应该为页面创建一个包装器文件,您可以在其中包装所有内容Provider(也可以在此处提供store,这意味着将redux存储存储到您的应用程序中),然后在Provider中,您可以ConnectedRouter从react-connected-router npm模块添加您的文件在其中的最后,您可以放置​​您的反应页面。

一个例子是

//wrapper.js
<Provider store={store}>
          <ConnectedRouter history={history}>
            <Route path={'/somepath'} component={<Test /} />
            <Route path={'/somepath2'} component={<Test2 /} />
          </ConnectedRouter>
    </Provider>

PS反应的组分可以通过包裹他们访问了Redux店composeconnect从功能react-reduxredux

现在,您还应该使用react2angular包装器包装该包装器,以将其集成到您的角度应用程序中。在您的react2angular文件中,您应该同时定义一个组件和一个控制器。现在,棘手的部分->您需要定义在react-connected-route中添加到角路由器的相同路由,并在react2angular包装文件中定义templatecontroller

至此,您已经完成。您已将反应页面与angular集成在一起。从技术上来说,在迁移期间,您有2个路由器。迁移所有页面后,您应该创建一个react路由器,将所有页面放到那里,然后删除react2angular包装器+当然是angular路由器。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章