Reactjs 为什么基于React路由器的应用程序在编译为“production”时在iOS 7上无法显示任何内容,但dev可以正常工作?
在iOS 7(Safari和Chrome)上,所有路由都呈现一个空白页面(可能是因为以下标记实际上是在outlet中呈现的) 是否有我可能做错的事情导致此问题,或者可能是历史/反应路由器错误?我能做什么或提供什么来帮助调试可能导致空白屏幕的东西? 我怀疑我的下一步将是尝试创建一个最小的应用程序来复制这个问题并提供链接,但我想在走这条路之前接触一下 版本:Reactjs 为什么基于React路由器的应用程序在编译为“production”时在iOS 7上无法显示任何内容,但dev可以正常工作?,reactjs,react-router,Reactjs,React Router,在iOS 7(Safari和Chrome)上,所有路由都呈现一个空白页面(可能是因为以下标记实际上是在outlet中呈现的) 是否有我可能做错的事情导致此问题,或者可能是历史/反应路由器错误?我能做什么或提供什么来帮助调试可能导致空白屏幕的东西? 我怀疑我的下一步将是尝试创建一个最小的应用程序来复制这个问题并提供链接,但我想在走这条路之前接触一下 版本: iOS:7.0 反应:v15.0.1 反应路由器:v2.0.1 巴别塔: “巴别塔核心”:“^6.5.1” “巴别塔加载器”:“^6.2.
- iOS:7.0
- 反应:v15.0.1
- 反应路由器:v2.0.1
- 巴别塔:
- “巴别塔核心”:“^6.5.1”
- “巴别塔加载器”:“^6.2.2”
- “巴别塔插件转换常量元素”:“^6.5.0”
- “babel插件转换内联元素”:“^6.5.0”
- “babel-preset-es2015”:“^6.5.0”
- “巴别塔预设反应”:“^6.5.0”
- “babel-preset-stage-0”:“^6.5.0”
- 可能是您没有正确设置路径格式。你能试着把它们格式化成
/signup
而不是signup/
(当我将路径更改为您使用的格式时,会出现运行时错误。)可能是您没有正确设置路径的格式。你能试着把它们格式化成
/signup
而不是signup/
(当我将路径更改为您使用的格式时,会出现运行时错误。)您是否找到了此问题的解决方案?sebastian_k我尚未验证此问题,但我现在怀疑这可能是因为我缺少babel polyfill,并且在我的入口点开始时没有导入它。谢谢回复!作为记录,在我的案例中,问题是Safari需要一个–因此,这与您看到的问题不完全相同,但也是一个兼容性问题。您有没有找到解决此问题的方法?sebastian_k我还没有对此进行验证,但我现在怀疑这可能是因为我错过了babel polyfill,错过了在我的入门点开始导入它。谢谢回复!作为记录,在我的例子中,问题是Safari需要一个解决方案——因此,这与您看到的问题不完全相同,但也是一个兼容性问题。
<div id="outlet"><noscript data-reactid=".15lgpv00t8g"></noscript></div>
// index.js
import React from 'react'
import ReactDOM from 'react-dom'
import { Router, browserHistory } from 'react-router'
import routes from './routes'
if (typeof document !== 'undefined') {
const outlet = document.getElementById('outlet')
ReactDOM.render(<Router history={browserHistory} onUpdate={() => window.scrollTo(0, 0)} routes={routes} />, outlet)
}
// routes.js
import React from 'react'
import { Route, IndexRoute } from 'react-router'
import App from './containers/App'
import NotFoundPage from './containers/NotFoundPage'
import HomePage from './containers/HomePage'
import SignupPage from './containers/SignupPage'
import LoginPage from './containers/LoginPage'
import ChangePasswordPage from './containers/ChangePasswordPage'
import LogoutPage from './containers/LogoutPage'
export default (
<Route path="/" component={App}>
<IndexRoute component={HomePage} />
<Route path="signup/" component={SignupPage} />
<Route path="login/" component={LoginPage} />
<Route path="change-password/" component={ChangePasswordPage} />
<Route path="logout/" component={LogoutPage} />
<Route path="*" component={NotFoundPage} />
</Route>
)