React.js是否要求app成为单个页面

Dmi*_*min 16 flux single-page-application reactjs

我正在使用React.js,我的问题很简单:如果我使用React,我的应用程序必须是单页应用程序吗?

如果不是,那么如何控制它们之外的组件?通过FLUX?还有其他标准方法吗?

如果是,那么是否有任何库在React的客户端执行权限/访问验证?

非常感谢!

nmi*_*mio 15

反应应用程序不必是单页面应用程序.React为您提供了一种在具有特定渲染逻辑的类方面建模HTML的方法,但没有强加任何类型的特定应用程序逻辑,如单页面和多页面.

我不太确定我理解你的其他问题,但我认为你实际上是在询问如何将反应应用程序建模为多页面应用程序.但是,有很多种方法可以像这样构建文件:

./app --> main page for your app
    ./app/page1/ --> page 1 of your app
    ./app/page2/ --> page 2 of your app
    ...
Run Code Online (Sandbox Code Playgroud)

通过这种方式,每个"页面"将包含一个自包含的反应项目.您的主应用程序页面可能包含加载这些页面的超链接,或者您可以在javascript代码中异步加载它们.

编辑:评论中澄清的问题是,由于页面上的某些操作,如何更改响应组件:

react component B是包含在内react component A.用户按下button B它包含在react component B,当按下时,调用callback Breact component B,这应该点击触发一些动作react component A.callback B应该以某种方式通知react component A事情已发生变化.

这是您可以选择做什么的地方.您可以react component B发出react component A侦听(并相应地重新渲染)的更改,或者您可以使用该FLUX模型.在FLUX模型中,react component B将向某个状态存储发出状态更改,这将触发要发出的事件.react component A将需要为此事件设置事件回调,并在react component B发出它时,react component A可以对它做出反应.