在VUE中使用过滤器(Filters)报[Vue warn]: Error in render: "TypeError: Cannot read property 'toFixed' of undefined"解决办法

摘要:
问题背景在使用VUE过滤器的时候,遇到控制台报错:vue.esm.js?
问题背景

在使用VUE过滤器的时候,遇到控制台报错 : vue.esm.js?efeb:628 [Vue warn]: Error in render: "TypeError: Cannot read property 'toFixed' of undefined"

查到undefined是在过滤器器中报出错误的moneyFilters.js

报错原因是因为过滤器执行了两次.

第一次是在后台没有传递过来数据的时候,执行了过滤器函数一次.而这个时候并没有数据,传递进过滤器函数的为undefined.报错是在这个时候产生的

第二次是后台传递数据,渲染数据之后,执行了一次过滤器函数.

解决办法是在过滤器中进行一次判断传递进来的参数.如果传递参数为 undefined 或者其他隐式转换为false的值,跳出函数,不再执行.

代码

export function toMoney(money) {

    if (!money) {//在这里进行一次传递数据判断.如果传递进来的为空值,返回其空字符串.解决其问题
        return '';
    }
    return money.toFixed(2);
}

免责声明:文章转载自《在VUE中使用过滤器(Filters)报[Vue warn]: Error in render: "TypeError: Cannot read property 'toFixed' of undefined"解决办法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇groovy–运算符重载Aircrack-ng无线审计工具使用下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

vue中解决拖动和点击事件的冲突

BUG说明: 鼠标上下方向拖拽,如果松开时鼠标位于悬浮按钮上会默认执行click事件,经验证,click事件与mouse事件的执行顺序为onmousedown =》onmouseup =》onclick,意味着在click事件执行时会与与其相关的mouse事件冲突。 解决方案:因为click事件执行时间短,所以利用鼠标拖动的时间差作为标志,在拖拽事件中计算...

【Vue】 编写Vue插件流程

一、在Vue中编写插件流程 1、创建组件 components/message.vue <template> <div v-if="isShow"> <span>{{message}}</span> </div> </template> <...

vue长按事件

<template> <div class="authorization"> <div class="main"> <div class="login-logo"> <img :src="http://t.zoukankan.com/logo" alt=""> <div class="tex...

vue histroy模式去除#页面刷新访问空白原因以及解决办法

开启history模式: 如果不开启的话,路由默认是hash模式,开启这个模式前端的工作也很简单,如下: mode: 'history' //在路由那里配置一下这个 如图标记1所示 https://www.XXXXX.com/data/#/login // => 就替换成 https://www.XXXXX.com/data/login 先用h...

Vue --》 如何在vue中调用百度地图

1.项目根目录下下载百度地图插件 npm install vue-baidu-map –save 2.在首页index.html中引入百度地图: <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=秘钥"></script> 我...

关于Vue的各个UI框架(elementUI、mint-ui、VUX)

elementUI 官网:http://element.eleme.io/ 使用步骤: 1、安装完vue-cli后,再安装 element-ui 命令行:npm i element-ui -D 相当于  npm install element-ui --save-dev //   i -> install       D  -> --save-...