Vue遇到定时器不能有返回值吗。

我是用vue做倒计时的,加了定时器就不能在页面中显示,可以打印,但是不会更新时间。

    yoytimer:function(){

            for(var i = 0; i < this.shopdata.length; i++){

            if(this.shopdata[i].ytiamer != ''){
                this.shopdata[i].youtit = true;

                var t1 = this.shopdata[i].ytiamer.split("'");//分割出数组
                var t2 = t1[0].split(',');//分割出时间格式
                var t3 = t2[1].split('-');//分割出月份
                var t4;
                if(t3[1] == undefined){
                    t4 =  Number(t3[0]);
                }else{
                    t4 = Number(t3[0] - Number(t3[1]));
                }//计算月份


                var d = new Date(t2[0],t4,t2[2],t2[3],t2[4],t2[5]);
                var d1 = new Date();
                var timer = parseInt((d - d1) / 1000);
                var da = parseInt(timer / 24 / 3600);
                var h = parseInt((timer / 3600) % 24);
                var m = parseInt((timer / 60) % 60);
                var s = parseInt(timer % 60);
                if(h < 10){
                    h = '0'+ h;
                }
                if(da < 10){
                    da = '0' + da;
                }
                if(m < 10){
                    m = '0' + m;
                }
                if(s < 10){
                    s = '0' + s;
                }
                // this.jjk();
            }else{
                this.shopdata[i].youtit = false;
            }
            
        }
        var data = '限时特惠:剩余'+ da + '天' + h + '时' + m + '分' + s +'秒';
        return data;
    },
    jjk:function(dd){
        
        var this1 = this.yoytimer();
        var timer = setInterval(function(){
            return 1;
            console.log(this1);
        },1000);
    }
阅读 2.4k
2 个回答

需要改写一下,需要在定时器中去执行方法,相当于log去打印一个偏函数,在外面获取的值是固定的,

jjk:function(dd){
        
        var that = this;
        var timer = setInterval(function(){
            return 1;
            console.log(that.yoytimer());
        },1000);
    }

this1 = this.yoytimer。因为你的值一开始就确定了,不会重新计算

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题