我遇到了一个奇怪的问题,我的 Angular 应用程序中的路线。此问题仅在 iOS 上发生
每当我单击导航菜单中的一个路线链接时,页面都会导航到该路线,但页面是空白的。似乎实际内容不在 router-outlet 中。但是,当我使用 Safari 远程检查检查元素时。我可以看到,所有元素都在那里,并且屏幕上也为它们分配了空间。如果我点击屏幕上的项目(仍然不可见),它们的点击事件就会被触发。
这是被检查元素和空白页面的屏幕截图(请注意屏幕是蓝色的,因为我将鼠标悬停在使用路由器选择的组件中的元素(在 safari 开发工具中)上。
但是,如果我刷新页面,或直接在地址栏中键入 URL,则组件会按预期显示。 (这个特殊的例子是 www.appollodev.com/#/events )
该页面位于 www.appollodev.com(使用“ng build --prod --aot”构建)
如果您有 iOS 设备,您可以使用这些链接亲自试用。只需转到根页面,然后使用右上角的汉堡菜单访问页面(在 div 元素上路由链接)。所有路线都不起作用,我的示例是使用 EVENTS 链接。
其他信息:
在这里尝试一下:www.appollodev.com
东西的版本:
@angular/cli: 1.0.0-rc.1
node: 6.10.0
os: win32 x64
@angular/cli: 1.0.0-rc.1
@angular/common: 2.4.9
@angular/compiler: 2.4.9
@angular/core: 2.4.9
@angular/forms: 2.4.9
@angular/http: 2.4.9
@angular/platform-browser: 2.4.9
@angular/platform-browser-dynamic: 2.4.9
@angular/router: 3.4.9
@angular/compiler-cli: 2.4.9
npm version: 4.4.4
iOS version: 10.0.1 (14A403)
不适用于:
iOS -> Chrome
iOS -> Safari
iOS -> Firefox
适用于:
Windows 8.1 -> Chrome, Safari, Firefox
OS X -> Chrome, Safari, Firefox
Android -> Chrome, Safari, Firefox
在网上搜索了几个小时后,我不知所措,希望有人能提供帮助。
有和没有 HashLocationStrategy 都会出现该错误
抱歉,网址不是链接,Stackoverflow 只允许我有 1 个链接
Best Answer-推荐答案 strong>
我的 ipad air 2 和 ios 10 也有同样的问题。我尝试了所有浏览器,从 safari 到 dolphin。只是某些路由器 socket 根本不渲染。希望有人能找到解决这个问题的方法,因为我无法从我的 linux 笔记本电脑上调试 ios。此外,在 android 上,一切都像一个魅力。
关于ios - Angular 2 应用程序 : route content is blank on iOS,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/43295965/
|