没有服务器的React app

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了没有服务器的React app相关的知识,希望对你有一定的参考价值。

如何在没有服务器的情况下打包和托管反应应用程序。该应用程序纯粹是前端。尝试构建应用程序npm run build,但创建了一个需要托管服务器的构建。

答案

您需要一个http服务器来本地托管该站点。但是如果你想在云上托管它,还有其他选择。

一旦捆绑了它。您只需将资产复制到Amazon S3上的存储桶即可。它允许您将它们作为静态网站提供。您可以在此处参考更多信息。

https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html

同样,其他云提供商也有自己的等价物。

另一答案

嗯不,它不需要服务器来托管它。正如你所说的那样只是前端。但是,如果您想要通过脚本导航导航其他,则需要一台服务器。简单地构建项目并将索引文件作为静态资产提供就足以在共享主机上运行代码。一旦索引文件下载完毕,它将执行导入的javascript(在这种情况下做出反应)。但是,如果你试着去说,website.com / alt它不会起作用,因为在反应中渲染特定的路线需要渲染和返回javascript。你需要服务器的东西。

react bundle是自动执行的,至少使用create-react-app。你不应该有任何问题。

另一答案

根据定义,您无法在没有服务器的情况下通过http(s):协议加载任何内容。你可能意味着像file:这样的网址加载,这是本地文件系统路径。

建立捆绑包以通过绝对URL加载资产。这是因为您的网页可能在网址中有一些深层路径。因此,您需要配置服务器,以便您的构建文件夹将作为站点的根目录。

这意味着如果您尝试从工作站上的磁盘运行它,您需要将构建目录的内容放入磁盘根目录才能工作(例如,如果不是Windows则为C:,如果不在Windows上则为/

以上是关于没有服务器的React app的主要内容,如果未能解决你的问题,请参考以下文章

Android Fragment 未显示在 React Native App 中

没有服务器的React app

如何在没有代码的情况下在 Android 上查看 React Native App 的网络流量

谷歌没有在使用 create-react-app 的反应应用程序中定义

react 父组件向子组件传递函数

React app无法登录到控制台或终端窗口