欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue如何引入全局過濾器

 更新時間:2023年01月23日 12:47:17   作者:呱呱?.?  
這篇文章主要介紹了Vue如何引入全局過濾器問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Vue引入全局過濾器

創(chuàng)建單獨的文件

加上時間過濾函數(shù)

將formatDate 暴露export 出來

// 時間戳轉(zhuǎn)時分秒
function getformatDate (date, fmt) {
  if (/(y+)/.test(fmt)) {
      fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
  }
  let o = {
      'M+': date.getMonth() + 1,
      'd+': date.getDate(),
      'h+': date.getHours(),
      'm+': date.getMinutes(),
      's+': date.getSeconds()
  };
  for (let k in o) {
      if (new RegExp(`(${k})`).test(fmt)) {
          let str = o[k] + '';
          fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : padLeftZero(str));
      }
  }
  return fmt;
};

function padLeftZero (str) {
  return ('00' + str).substr(str.length);
};

 // 時間過濾
 export function formatDate(time) {
  return getformatDate(new Date(time), "yyyy-MM-dd hh:mm");
}

在main.js中全局引入

import * as filters from './filters' // global filters

// register global utility filters.
Object.keys(filters).forEach(key => {
  Vue.filter(key, filters[key])
})

在組件中使用formatDate過濾時間戳

          <el-table :data="item.children" style="width: 100%">
            <el-table-column prop="title" label="標題"></el-table-column>
            <el-table-column prop="portName" label="上傳單位"></el-table-column>
            <el-table-column prop="createdTime" label="上傳時間">
              <template slot-scope="scope">{{scope.row.createdTime | formatDate}}</template>
            </el-table-column>
          </el-table>

頁面顯示

vue全局過濾器配置

有時一個過濾器需要在項目中多次使用,此時可以將該過濾器定義為全局過濾器,全局過濾器在main.js下配置。

以時間過濾器為例,當為局部過濾器寫為:

filters: {
? timeForm(val) {
?
? ? ? ? if (typeof (value) == "undefined" || value === null) return "";
?
? ? ? ? let date = new Date(value);
? ? ? ? var y = date.getFullYear();
? ? ? ? var m = date.getMonth() + 1;
? ? ? ? var d = date.getDate();
? ? ? ? if (isNaN(y) && y != 0) {
? ? ? ? ? y = " ";
? ? ? ? }
? ? ? ? if (isNaN(m) && m != 0) {
? ? ? ? ? m = " ";
? ? ? ? } else {
? ? ? ? ? (m < 10 ? "0" + m : m);
? ? ? ? }
? ? ? ? if (isNaN(d) && d != 0) {
? ? ? ? ? d = " ";
? ? ? ? } else {
? ? ? ? ? (d < 10 ? "0" + d : d);
? ? ? ? }
?
? ? ? ? return y + "-" + m + "-" + d + " " + date.toTimeString().substr(0, 5);
}

現(xiàn)在我們把它設(shè)置成全局過濾器

Vue.filter('timeForm', function (value) {
? if (typeof (value) == "undefined" || value === null) return "";
?
? let date = new Date(value);
? var y = date.getFullYear();
? var m = date.getMonth() + 1;
? var d = date.getDate();
? if (isNaN(y) && y != 0) {
? ? y = " ";
? }
? if (isNaN(m) && m != 0) {
? ? m = " ";
? } else {
? ? (m < 10 ? "0" + m : m);
? }
? if (isNaN(d) && d != 0) {
? ? d = " ";
? } else {
? ? (d < 10 ? "0" + d : d);
? }
? return y + "-" + m + "-" + d + " " + date.toTimeString().substr(0, 5);
});
var timeForm = Vue.filter('timeForm');
  • 直接定義為:Vue.filter('timeForm', function (value) { //過濾代碼}
  • 然后定義一下過濾器:var timeForm = Vue.filter('timeForm')   

使用的時候和局部過濾器相同方式使用,直接{{   value   |  filter   }}  即可

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue之數(shù)據(jù)交互實例代碼

    vue之數(shù)據(jù)交互實例代碼

    本篇文章主要介紹了vue之數(shù)據(jù)交互實例代碼,vue中也存在像ajax和jsonp的數(shù)據(jù)交互,實現(xiàn)向服務(wù)器獲取數(shù)據(jù),有興趣的可以了解一下
    2017-06-06
  • Vue.js實現(xiàn)簡單ToDoList 前期準備(一)

    Vue.js實現(xiàn)簡單ToDoList 前期準備(一)

    這篇文章主要介紹了Vue.js實現(xiàn)簡單ToDoList的前期準備,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • vue 實現(xiàn)路由跳轉(zhuǎn)時更改頁面title

    vue 實現(xiàn)路由跳轉(zhuǎn)時更改頁面title

    今天小編就為大家分享一篇vue 實現(xiàn)路由跳轉(zhuǎn)時更改頁面title,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • vue計算屬性computed--getter和setter用法

    vue計算屬性computed--getter和setter用法

    這篇文章主要介紹了vue計算屬性computed--getter和setter用法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • vue項目遇見事件冒泡該如何處理詳解

    vue項目遇見事件冒泡該如何處理詳解

    冒泡事件處理是由內(nèi)而外發(fā)生的,例如有兩個父子div,給他們分別寫上點擊事件,點擊子div先響應(yīng)的是子div,再是父div,下面這篇文章主要給大家介紹了關(guān)于vue項目遇見事件冒泡該如何處理的相關(guān)資料,需要的朋友可以參考下
    2023-04-04
  • 在vue項目中,將juery設(shè)置為全局變量的方法

    在vue項目中,將juery設(shè)置為全局變量的方法

    今天小編就為大家分享一篇在vue項目中,將juery設(shè)置為全局變量的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • vue打印插件vue-print-nb的實現(xiàn)代碼

    vue打印插件vue-print-nb的實現(xiàn)代碼

    這篇文章主要介紹了vue打印插件vue-print-nb的實現(xiàn),需要引入插件npm install vue-print-nb --save,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • Vue.js表單控件綁定示例盤點

    Vue.js表單控件綁定示例盤點

    這篇文章主要為大家介紹了一些Vue.js表單控件綁定示例盤點,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • vue?目錄樹的展開與關(guān)閉的實現(xiàn)

    vue?目錄樹的展開與關(guān)閉的實現(xiàn)

    Vue作為一款流行的前端框架,提供了一種數(shù)據(jù)驅(qū)動的方式來實現(xiàn)目錄樹,本文主要介紹了vue?目錄樹的展開與關(guān)閉的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2023-11-11
  • Webpack打包圖片-js-vue 案例解析

    Webpack打包圖片-js-vue 案例解析

    在開發(fā)中我們會有各種各樣的模塊依賴,這些模塊可能來自于自己編寫的代碼,也可能來自第三方庫,本文給大家介紹Webpack打包圖片-js-vue的相關(guān)知識,感興趣的朋友跟隨小編一起看看吧
    2023-11-11

最新評論