JS

Vue 필터

곰탁 2022. 2. 18. 12:17
// 전역 필터 등록
Vue.filter('numComma', function (value, prec, toFixed) {
    if (value == undefined || value == null) return '';
    value = '' + value;
    return nu.fixedCm(value, prec, (toFixed != undefined) ? true : false);
});
Vue.filter('dateFmt', function (value, formatStr, targetFormatStr) {
    if (value == undefined || value == null) return '';
    value = '' + value;
    return du.getCstmFrmt(value, formatStr, targetFormatStr);
});
Vue.filter('masking', function (value, showNum) {
    if (value == undefined || value == null) return '';
    value = '' + value;
    let split = value.split('@');
    return value.substring(0, showNum) + split[0].substr(showNum).replace(/(\w)|(\W)/g, '*') + '@';
});
Vue.filter('dateFmtMnt', function (date) {
    // console.log(moment(date).format('YYYY-MM-DD HH:mm:ss'));
    return moment(date).format('YYYY-MM-DD HH:mm:ss');
});
Vue.filter('nvl', function (value) {
    return nu.isN(value) ? value : '0.00';
});
<tr v-else v-for="item in myMiningList">
    <td><p>{{item.trade_day | dateFmt('yyyyMMdd', 'yyyy-MM-dd')}}</p></td>
    <td class="right"><p class="cost">{{item.fee_amt | numComma(0)}}</p></td>
    <td class="right"><p>{{(item.apply_compl_yn == 1) ? '적용' : '-'}}</p></td>
    <td class="right"><p>{{item.cntrbt_rate | numComma(2, true)}}%</p></td>
    <td class="right"><p class="cost">{{(item.real_dstrbt_qty) | numComma(3, true)}}</p></td>
    <td class="right"><p class="cost">{{item.mining_unit_price | numComma(0)}}</p></td>
</tr>