为了账号安全,请及时绑定邮箱和手机立即绑定

totalMoney 用全局的过滤器报错?

{{totalMoney | money('元')}}

Vue.filter("money", function(value, type) { //全局过滤器

    return "¥ " + value.toFixed(2) + type;

});


报错

[Vue warn]: Failed to resolve filter: money

(found in <Anonymous>)


正在回答

5 回答

哪种都可以的,一般不怎么用到变量输出~inputtypetape

0 回复 有任何疑惑可以回复我~

你可以直接重写个函数在filters初始化内部,

money: function (value) {
    return value.toFixed(2)+'元';
}
可以避开这个错误!


0 回复 有任何疑惑可以回复我~

我在控制台上打了断点,发现报错的时机总是在程序初始化渲染的时候,无论将来程序怎么运行,就只报这一次错,而咱们控制台报错的内容是:“警告,解析过滤器XX失败”。所以我推测,在总金额上使用过滤器的时候,过滤器还没有加载,而在后面再次使用过滤器时因为已经加载了,所以不会报错了。所以,我试着将全局的过滤器声明放到了new Vue实例之前,竟然不报错了,说明原因确实如此。这只是表面上的解决办法,总重要的是我们要弄懂Vue背后的机理。

在具体求每个商品金额的时候使用过滤器不报错,在总金额加上过滤器的时候就报错,呵呵,这也正说明我们对Vue的运行机制和编译过程了解的太少,我们还要与Vue多多切磋。

0 回复 有任何疑惑可以回复我~

我也是在这里报错啊,前面用的过滤器都没有问题,就是在这里报错了,而且是一摸一样的报错,并且也不好调试。

0 回复 有任何疑惑可以回复我~

value.toFixed(2)是哪里

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
使用vue2.0实现购物车和地址选配功能
  • 参与学习       96927    人
  • 解答问题       445    个

本视频教程结合案例完整贯穿各个知识点,轻松玩转vue2.0框架

进入课程

totalMoney 用全局的过滤器报错?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信