4***@qq.com
4***@qq.com
  • 发布:2019-03-22 14:33
  • 更新:2019-03-26 12:48
  • 阅读:2496

官网vue向nvue通讯的例子运行不了

分类:nvue

已有detail.vue 和 list.nvue两个页面

list.nvue


 const globalEvent = weex.requireModule('globalEvent');  
 export default {  
....  
 created() {  
            globalEvent.addEventListener("plusMessage", e => {  
                console.log(e.data);  
                if (e.data.num) {   
                   console.log(e.data.num);  
                }  
            });  
        },  
}  
....

detail.vue
我的逻辑是点击一个按钮,发送一条固定的信息给list.vue。


// 通知主页  
var pages = getCurrentPages();  
var page = pages[pages.length - 1];  
var currentWebview = page.$getAppWebview();  

plus.webview.postMessageToUniNView({  
     num: '111'  
}, currentWebview.id);  

但是我发现根本运行不了,而且list.nvue的打印是在我从list.vue跳转进detail.vue的时候打印的。

我想要的效果是,list.nvue一直在全局监控,一旦接收到信息,就执行相关操作。
相信官网例子的本意也是这样的,这样就可以变相地实现nvue的“onShow”事件。
但是我发现这个例子根本运行不起来,是哪里做错了呢?

2019-03-22 14:33 负责人:无 分享
已邀请:
lori

lori

var page = pages[pages.length - 1];
这句话是获取了当前的页面
从你的描述看,你的当前页面是detail.vue,所以就无效了
你需要找到list.nvue对应的page,然后再post就可以了

该问题目前已经被锁定, 无法添加新回复