一、业务需求场景
从vue组件内嵌帆软的iframe地址,点击从帆软页面某条数据,将参数带入本组件的vue代码,触发某事件,打开相应vue页面。
(1)帆软页面某数据
在这里插入图片描述
(2)点击某数据后,触发的vue事件
在这里插入图片描述
二、帆软端配置
在这里插入图片描述
在这里插入图片描述
代码:

window.parent.postMessage({
                        status: 'ok',
                        params: {
                          jhbm: jhbm,
                          gzfxsj: gzfxsj
                        }
                    }, '*');

三、vue组件部分代码

methods: {
    iframePushListener (event) {  // 监听帆软iframe后事件
      if (event.data.status === 'ok') {
        console.log(event.data)  //打印需要从帆软页面带过来的参数
        this.$refs.gzjfrbbForm.init('view', event.data.params.jhbm, event.data.params.gzfxsj)  //需要处理的vue事件
      }
    }
  },
mounted () {
this.$nextTick(() => window.addEventListener('message', this.iframePushListener))  // 监听帆软iframe消息
}
GitHub 加速计划 / vu / vue
108
18
下载
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:2 个月前 )
9e887079 [skip ci] 1 年前
73486cb5 * chore: fix link broken Signed-off-by: snoppy <michaleli@foxmail.com> * Update packages/template-compiler/README.md [skip ci] --------- Signed-off-by: snoppy <michaleli@foxmail.com> Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 1 年前
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐