【问题标题】:AngularJS - Using ternary operators and filters within a bindingAngularJS - 在绑定中使用三元运算符和过滤器
【发布时间】:2014-12-12 22:22:37
【问题描述】:

我目前有一个简单的数据绑定:

{{ myAccount.Balance }}

我认为应用了几个过滤器:

{{ myAccount.Balance | filter1 | filter2 }}

但是,当余额小于零时,我想使用三元运算符,以下工作(没有过滤器):

{{ myAccount.Balance > 0 ? myAccount.Balance : myAccount.Balance + 'minus' }}

我怎样才能使用上面的过滤器 1 和 2?

【问题讨论】:

    标签: javascript angularjs angularjs-scope ternary-operator angular-filters


    【解决方案1】:

    您需要将它们括在括号中 () 优先

    {{ (myAccount.Balance > 0 ? myAccount.Balance : myAccount.Balance + 'minus') | filter | filter 2 }}
    

    【讨论】:

    • 虽然上面现在使用了过滤器,但它没有添加“减号”文本。
    • @OamPsy 当您期望 minus 连接时,myAccount.Balance 的结果是什么。
    • 应该显示“£3000(减)”
    • @OamPsy 所以实际的myAccount.Balance 结果是£3000?如果是这样,您是否在控制台中看到任何错误
    • 实际结果是 -3000,所以 £-3000.... 我添加了 £(但稍后会这样做.. 过滤器之一删除 - (减号).. 这是哪里我希望文本(减号)出现。
    猜你喜欢
    • 2013-06-11
    • 2020-06-02
    • 2020-09-17
    • 1970-01-01
    • 2013-07-14
    • 1970-01-01
    • 2021-04-01
    • 2021-07-14
    • 2012-08-14
    相关资源
    最近更新 更多