vue自定義過濾器格式化時間為年、月、日、小時、分鍾、剛剛


轉載地址:https://www.cnblogs.com/place-J-P/p/7641779.html

 

首先需要在需要過濾的時間里面添加一個過濾器

我這里需要過濾的是item.time  

然后需要在item.time后面添加自定義過濾的名稱 date 

 

接下來就是需要定義一個date函數進行過濾操作了

 

 首先聲明的一點就是大家要看得懂es6的語法,要知道let  const  和var 他們的作用域的不一樣的,let是在局域內使用,不能提升,不能跨域。

不懂es6的最好在網上看看文檔,因為vue大多都是推薦使用es6語法,相對於es5簡明了很多,同時提升了效率。普遍的公司前端面試都要求了解es6,

畢竟這是一個趨勢,所有東西都要往新的學。

最后附上代碼和效果圖=>

復制代碼
filters:{
      date(time){
          let oldDate = new Date(time)
          let newDate = new Date()
          var dayNum = "";
          var getTime = (newDate.getTime() - oldDate.getTime())/1000;

          if(getTime < 60*5){
              dayNum = "剛剛";
          }else if(getTime >= 60*5 && getTime < 60*60){
              dayNum = parseInt(getTime / 60) + "分鍾前";
          }else if(getTime >= 3600 && getTime < 3600*24){
              dayNum = parseInt(getTime / 3600) + "小時前";
          }else if(getTime >= 3600 * 24 && getTime < 3600 * 24 * 30){
              dayNum = parseInt(getTime / 3600 / 24 ) + "天前";
          }else if(getTime >= 3600 * 24 * 30 && getTime < 3600 * 24 * 30 * 12){
              dayNum = parseInt(getTime / 3600 / 24 / 30 ) + "個月前";  
          }else if(time >= 3600 * 24 * 30 * 12){
              dayNum = parseInt(getTime / 3600 / 24 / 30 / 12 ) + "年前";  
          }

          let year   = oldDate.getFullYear();
          let month  = oldDate.getMonth()+1;
          let day    = oldDate.getDate();
          let hour   = oldDate.getHours(); 
          let minute = oldDate.getMinutes(); 
          let second = oldDate.getSeconds(); 
          return dayNum+" "+year+"-"+month+"-"+day+" "+hour+":"+minute+":"+second;
      }
  }
復制代碼

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM