2016-05-12 250 views
0

不知道如果我做错了,或者这是一个错误,Vue公司的iFrame与Vue的路由器

我有在主页上的iframe一个简单的Web页面vue.js运行VUE路由器。如果页面上没有iframe,当使用v-link在页面之间移动但使用iframe时,它工作正常,当尝试在页面之间移动时出现此跨域错误。

vue.common.js?e881:1140 Uncaught SecurityError: Blocked a frame with origin "http://localhost:8080" from accessing a frame with origin "http://interactr-dev.s3-website-eu-west-1.amazonaws.com". Protocols, domains, and ports must match.

我不知道这有什么关系,但在iframe也运行Vue公司(他们并不在同一个ID绑定虽然)。

有没有人,如果这是一个错误与Vue或与我做的方式?

+0

这是一个交叉来源问题:您似乎在混合来自本地服务器和亚马逊S3服务器的内容。 – nils

+0

是的,这是iframe的src在s3上。该iframe加载和播放就好了,它不显示错误,直到你用vue路由器触发一个页面更改,不知道Vue是否尝试在iframe中做任何事情,当它做页面更改时,那是什么引发了跨域错误 –

+0

我不知道它是否有关系,但[Vue的最后一个版本(1.0.24)](https://github.com/vuejs/vue/releases)说:'1.0.23中的固定回归中断应用程序,如果页面包含不同来源的iframes –

回答

0

Vue v1.0.24修复了iframe的问题(谢谢@Yerko)。这个问题的作者提到,更新到更高版本解决了这个问题。