首先创建一个过滤器文件(filter.js)里面包含所定义的过滤方法
使用 export 导出方法,例如:
// 格式化金额,支持 2 - 4 位小数
export function formatMoney( num, toFixed2 = true ) {
if (num === null || num === undefined) return '';
num = Number( (+num).toFixed( 5 ) );
let numStr = '' + num;
// 是否为负数
let isMinus = false;
if (/^-/.test( numStr )) {
isMinus = true;
numStr = numStr.slice( 1 );
}
if (toFixed2) {
numStr = Number( numStr ).toFixed( 2 );
} else {
let decimal = numStr.split( '.' )[ 1 ];
let decimalLength = decimal ? decimal.length : 0;
if (decimalLength > 5) {
numStr = Number( numStr ).toFixed( 5 );
} else if (decimalLength > 2) {
numStr = Number( numStr ).toFixed( decimalLength )
} else {
numStr = Number( numStr ).toFixed( 2 );
}
}
numStr = (isMinus ? '-' : '') + numStr;
return numStr;
}
在main.js文件中进行导入
import * as filters from './filters';
// 注册全局 filter
Object.keys( filters ).forEach( key => {
Vue.filter( key, filters[ key ] )
} );
!!!全局组件和指令也是一样的方法