2016-05-12 249 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)。這個問題的作者提到,更新到更高版本解決了這個問題。