如何判断 React 应用程序是否为单页应用程序?

How can I tell if a react application is a single page application?

我不确定调用某个应用程序是单页应用程序(SPA)还是多页应用程序(MPA)。该应用程序利用 react、redux 和 react-router,后者使用 <switch /> 路由到几个 <Route />,每个都包装一个 React 组件。对于某些人来说,该应用程序的外观和感觉与传统 MPA 一样,因为每个页面看起来都不同,一个 'page' "next" 到另一个。然而,事实上只有一个商店,javascript 控制着 url,并且在 webpack.config.js 中只有一个 entry 点,这让我认为它是一个 SPA。 SPA和MPA之间的界限是怎样的?

如果你使用react你必须先安装它的依赖。

如果您使用 create-react-app YourReactProject command,您会注意到只有一个 htmlYourReactProject/public/index.html 生成,其中只有一个 div 带有 id = root 和你在 YourReactProject/src/index.jsindex.js 使用这个 div 作为 parent node 来反应 代码行。

ReactDOM.render(<App />, document.getElementById('root'));

因此,每当您单击某些 url 时,root div 将保留在页面中,但新页面内容将变为 root node 的 children。所以从技术上讲你只有一个 div id=root 但它的 children 被替换了。希望你得到答案。

水疗不在于它的感觉,而在于它的功效。

一般情况下,如果路由由前端处理,就是spa。

当然,这过于简单化了,但对于现代应用程序而言,这通常是正确的。