React主页属性不起作用

时间:2017-08-16 02:59:55

标签: node.js reactjs create-react-app react-scripts

在我的package.json文件中 def is_leap(year): leap = False if(year % 4 == 0 and year % 100 != 0) or (year%400 == 0 ): print 'Leap Year' else: return leap

我使用"homepage" : "http://myname.project.com/myapp",构建应用程序,输出确认已创建/ build目录。输出:

  

102.97 KB build / static / js / main.bfa46b52.js

     

24.37 KB build / static / css / main.cfe8a47e.css

     

该项目是在假设它托管在/ myapp /的情况下构建的。您可以使用package.json中的主页字段来控制它。

     

可以部署构建文件夹。

如果我使用npm run buildnpm start启动应用程序,应用程序将启动并加载index.html页面,但是对index.html中静态资源的引用已被破坏(/ myapp / static /js/main.js和/myapp/static/css/main.css)。我可以在没有/ myapp的情况下直接导航到它们(localhost:5000 / static / js / main.js可以工作; localhost:5000 / myapp / static / js / main.js不起作用)

如果我将构建文件夹部署到/ myapp目录下的其他普通旧Apache服务器,它似乎按预期工作。有什么方法可以配置serve -s build来提供/ myapp目录中的页面吗?

该应用程序目前是一个页面,没有链接,也没有反应路由器或任何等效的实现。该团队一直在使用webpack,但删除了它。该应用程序使用react-scripts进行捆绑。

1 个答案:

答案 0 :(得分:2)

我不清楚发生了两件事情。

  1. 设置主页属性对index.html进行了修改,以便在部署到/ myapp目录时正常运行。
  2. 正在运行npm startserve -s build/仍然从内置静态服务器的根目录部署我的应用程序。
  3. 主页属性与您的应用实际部署位置无关。为了解决这个问题,我使用postbuild脚本将my / build文件夹的内容移动到/ build / myapp文件夹。然后它按预期工作。

    这里有更多关于此的讨论: https://github.com/facebookincubator/create-react-app/issues/1354#issuecomment-311506599