在使用wx.redirect时定向一次本页面,无法把数据渲染到试图层上?
发布于 7 年前 作者 blai 7119 次浏览 来自 官方Issues


deal: function() {

   var that = this

   console.log("deal");

   // if(this.data.myUserInfo!=null){

   ws.onOpen(res => {

     that.data.isSocket = true;

     console.log('监听 WebSocket 连接打开事件。', res)

   })

   ws.onClose(onClose => {

     that.data.isSocket = false

     console.log('监听 WebSocket 连接关闭事件。'+that.data.isSocket, onClose)

     // socketOpen = false;

     // that.connectStart()

   })

   ws.onError(onError => {

     console.log('监听 WebSocket 错误。错误信息', onError)

     this.data.isSocket = false

   })

   ws.onMessage(onMessage => {

     console.log("onmessage is listener");

     var res = JSON.parse(onMessage.data)

     // console.log(res,"接收到了消息")

     var type = res.type;

     var flagRoom=true;

     var flagQue=true ;  

     console.log("本次执行的操作代码为" + type);

     console.log("监听到了回传数据+" + JSON.stringify(onMessage));

     if (type == 1) { //创建房间之后的回传数据

       that.setData({

         isCreate: true,//创建房间后自动变为创建者

         list: res,

         createId: res.createId,

         createUrl: res.createUrl,

         roomId: res.roomId

       })

       flagQue=false;

       console.log("创建的房间号" + that.data.roomId);

     }


type==1里面的setdata无法渲染上

问题:在编译之后创建房间是一切都是正常的,但如果使用wx.redirect重定向到在这个页面,数据还是可以获取,可sedata执行完毕之后,数据却无法渲染到视图层上,已经排除了没取到值的问题,排除了变量名写错的问题(我代码写的比较烂,初学js,希望各位大佬能指点一下迷津)

这是重定向的代码

if (this.data.questionId >=this.data.listQue.length) {
       clearInterval(this.countTimer);
      // console.log(app.myinfo.studentinfo.gold);
      //是否要重新开始
       console.log(that.data.success);
      // var coin = app.myinfo.studentinfo.gold + that.data.success * 10;
       //app.myinfo.studentinfo.gold = coin;
      // console.log(app.myinfo.studentinfo.gold);
      wx.redirectTo({
        url: '/pages/socket/socket',
      })

ps:有房间号那张图片是我编译之后进这个页面,点击创建房间后的结果

没有房间号的那张图片是我重定向后进这个页面,点击创建房间获取到了数据,但界面无法渲染上

1 回复

看起来好复杂的样子

回到顶部