vuejs-br / forum

Fórum sobre a tecnologia Vue.js, totalmente em português!
MIT License
224 stars 3 forks source link

Receber dados através de Cross Document Message #5

Open EGMartins opened 6 years ago

EGMartins commented 6 years ago

Boa noite a todos! Estou começando com Vue, venho do Angular 2. Estou gostando muito da experiência. Estou com uma dificuldade e gostaria da opinião de vocês... Tenho um app em Vue, que foi injetado em uma aplicação Rails existente através de um iFrame. Estou tendo dificuldade em fazer comunicação entre a aplicação e o o Vue através de Cross Document Message ( postMessage() ). Eu envio a mensagem corretamente do "hospedeiro", porém não estou sabendo como receber a informação no Vue. Alguém pode me dar uma luz?

Obrigado!!

danielschmitz commented 6 years ago

Olá @EGMartins, que bom que está gostando do vue. Está dando algum erro? Não está acontecendo nada? Ou você nao sabe nem por onde começar? Pelo que eu entendi vc tem uma página html com o Vue instanciado, e algum frame de fora está tentando se comunicar. É isso ?

EGMartins commented 6 years ago

Bom dia @danielschmitz, tudo bem? Na verdade o Vue é quem está dentro do iframe. Eu resolvi essa questão, adicionando event listeners dos dois lados. Quando minha página com o Vue acaba de carregar (utilizei o callback mounted), ele manda uma mensagem para página superior avisando que está pronta. Aí a aplicação começa o envio das informações e continua enviando a cada 3 segundos. Quando eu receber o que preciso, mando outra mensagem para que ela pare de enviar as informações. Agora está funcionando 100%! Obrigado pelo apoio!

VitorLuizC commented 5 years ago

Desculpa ressuscitar a issue, mas a algum tempo rolou uma pergunta similar no Slack e eu fiz um GIST de uma função pra se comunicar com o Vue através de um