一些好用的通用方法

一、除了延時函數  setTimeout(() => { 你的代碼},0)  和  nextTick  外 克隆 然後更新虛擬DOM 無疑是個比較好的選擇

//用於克隆對象
    clone: function(obj){  
        var o;  
        switch(typeof obj){  
        case 'undefined': break;  
        case 'string'   : o = obj + '';break;  
        case 'number'   : o = obj - 0;break;  
        case 'boolean'  : o = obj;break;  
        case 'object'   :  
            if(obj === null){  
                o = null;  
            }else{  
                if(obj instanceof Array){  
                    o = [];  
                    for(var i = 0, len = obj.length; i < len; i++){  
                        o.push(this.clone(obj[i]));  
                    }  
                }else{  
                    o = {};  
                    for(var k in obj){  
                        o[k] = this.clone(obj[k]);  
                    }  
                }  
            }  
            break;  
        default:          
            o = obj;break;  
        }  
        return o;    
    },

這是用於克隆的一個通用方法 ,然後利用 
export default {
  data(){
    return{
        modalform:{}
     }
  }
}

vm.$set(vm.$data,'modalform', 引入的變量.clone(this.modalform))

這樣做的目的只有一個  強行更新 虛擬DOM 中的數據,也就是 modalform   

 

二 、獲取當前日期,並格式化

var getNow = function(){
        var data = new Date();
        var year = data.getFullYear();
        var month = data.getMonth() + 1;
        var date = data.getDate();
        var hh = data.getHours();
        var mm = data.getMinutes();
        var ss = data.getSeconds();
        var now = year + "-" + (month<10?0:'') + month + "-" + (date<10?0:'') + date +' '+(hh<10?0:'')+hh+':'+(mm<10?0:'')+mm+':'+(ss<10?0:'')+ss;
        return now;
    };

更新中...

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章