Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Webpack 在github页面上创建react应用程序生成失败_Webpack_Create React App - Fatal编程技术网

Webpack 在github页面上创建react应用程序生成失败

Webpack 在github页面上创建react应用程序生成失败,webpack,create-react-app,Webpack,Create React App,我已使用CreateReact应用程序创建react应用程序。(呜呜!) 当我开发应用程序时,它运行良好 当我运行“npm build”,然后使用python SimpleHTTPServer在本地托管build文件夹时,应用程序运行良好。它还可以在本地托管的另一台机器上工作 我使用gh页面构建应用程序并将其部署到github html加载、js加载和css加载,但页面不呈现。没有控制台错误。这几乎就像js没有运行一样 在github上托管时,js不会运行有什么原因吗 任何帮助都将不胜感激,没有

我已使用CreateReact应用程序创建react应用程序。(呜呜!)

当我开发应用程序时,它运行良好

当我运行“npm build”,然后使用python SimpleHTTPServer在本地托管build文件夹时,应用程序运行良好。它还可以在本地托管的另一台机器上工作

我使用gh页面构建应用程序并将其部署到github

html加载、js加载和css加载,但页面不呈现。没有控制台错误。这几乎就像js没有运行一样

在github上托管时,js不会运行有什么原因吗

任何帮助都将不胜感激,没有错误信息,这是v。很难知道去哪里


这可能与我正在使用的react router有关吗?

JavaScript运行正常,页面呈现也正确。但你当然没想到会有空白页。要了解它呈现空白页的原因,可以使用

转到devtools中的
React
选项卡,可以看到渲染了哪些元素:

如您所见,
包含
null
,这意味着不存在匹配的路由。您可能想知道实际请求的路由是什么,因此可以调用history prop的
getCurrentLocation
函数。所选元素在控制台中作为变量
$r
可用,您可以使用
$r.props.history.getCurrentLocation()
调用它:

现在您知道路由实际上是
/ojclient/
,但您没有这个

正如您所怀疑的,
react路由器
就是问题所在。您可以将主路由的根目录更改为
/ojclient/
,也可以使用自定义历史而不是
browersHistory
,其中您可以将
basename
指定为
/ojclient/
(请参阅)


请记住,GitHub页面不支持
browserHistory
使用的HTML5 pushstate API。要解决这个问题,您可以查看CreateReact应用程序的部分。

JavaScript运行正常,页面也正确呈现。但你当然没想到会有空白页。要了解它呈现空白页的原因,可以使用

转到devtools中的
React
选项卡,可以看到渲染了哪些元素:

如您所见,
包含
null
,这意味着不存在匹配的路由。您可能想知道实际请求的路由是什么,因此可以调用history prop的
getCurrentLocation
函数。所选元素在控制台中作为变量
$r
可用,您可以使用
$r.props.history.getCurrentLocation()
调用它:

现在您知道路由实际上是
/ojclient/
,但您没有这个

正如您所怀疑的,
react路由器
就是问题所在。您可以将主路由的根目录更改为
/ojclient/
,也可以使用自定义历史而不是
browersHistory
,其中您可以将
basename
指定为
/ojclient/
(请参阅)

请记住,GitHub页面不支持
browserHistory
使用的HTML5 pushstate API。要解决这个问题,您可以查看CreateReact应用程序的一节