React.js 是否要求应​​用程序是单个页面

IT技术 reactjs single-page-application flux
2021-05-20 20:52:31

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

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

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

非常感谢!

1个回答

React 应用程序不必是单页应用程序。React 为您提供了一种根据具有特定渲染逻辑的类对 HTML 进行建模的方式,但不会强加任何类型的特定应用程序逻辑,例如单页和多页。

我不太确定我是否理解您的其余问题,但我认为您本质上是在问如何将 React 应用程序建模为多页应用程序有很多方法,但是,一种是像这样构建文件:

./app --> main page for your app
    ./app/page1/ --> page 1 of your app
    ./app/page2/ --> page 2 of your app
    ...

这样,每个“页面”将包含一个自包含的react项目。您的主应用程序页面可以包含加载这些页面的超链接,或者您可以在您的 javascript 代码中异步加载它们。

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

Sayreact component B包含在react component A. 用户按下button B它包含在react component B,并按下时调用callback Breact component B,这应该点击触发一些动作react component Acallback B应该以某种方式通知react component A事情已经改变。

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