javascript - 简单的 Angular JS 过滤器不起作用

标签 javascript angularjs ionic-framework filter

我试图在我的项目中插入一个简单的过滤器,但它不起作用,没有错误......只是不起作用。我正在复制并粘贴

中的所有内容

https://scotch.io/tutorials/building-custom-angularjs-filters

过滤器.js

angular.module('starter.filters', [])

// Setup the filter
.filter('ordinal', function() {

  // Create the return function
  // set the required parameter name to **number**
  return function(number) {

    // Ensure that the passed in data is a number
    if(isNaN(number) || number < 1) {

      // If the data is not a number or is less than one (thus not having a cardinal value) return it unmodified.
      return number;

    } else {

      // If the data we are applying the filter to is a number, perform the actions to check it's ordinal suffix and apply it.

      var lastDigit = number % 10;

      if(lastDigit === 1) {
        return number + 'st'
      } else if(lastDigit === 2) {
        return number + 'nd'
      } else if (lastDigit === 3) {
        return number + 'rd'
      } else if (lastDigit > 3) {
        return number + 'th'
      }

    }
  }
});

依赖关系

angular.module('starter', ['ionic', 'starter.controllers','starter.filters','ngCordova'])

index.html

<script src="js/app.js"></script>
<script src="js/controllers.js"></script>
<script src="js/filters.js"></script>

HTML:

{{400 || ordinal}}

这不起作用......为什么?

感谢您的帮助

最佳答案

您必须删除其中一个|

{{400 | ordinal}}

无论如何,您都不会得到任何返回,因为 400 与任何“else if”都不匹配,并且在这种情况下您不会返回任何内容。

关于javascript - 简单的 Angular JS 过滤器不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41513975/

相关文章:

javascript - 用 JavaScript 替换 '<' 和 '>'

javascript - 无法获取 Controller 中的数据

css - Ionic 3 如何在自定义 ionic 输入中垂直居中文本?

javascript:如何在没有 jquery 的情况下编写 $(document).ready 之类的事件

Javascript 转义字符串以进行输出并避免 NaN

javascript - 通过 API 提取 Nerd 的 youtube 统计信息

javascript - 在 AngularJS 中显示从 Controller 附加的值时出现警告消息

javascript - 如何找到原因 AngularJS "Argument ' MyCtrl' 不是函数,未定义“

html - 设置 ionic 背景不起作用

angular - 如何获取formarray ionic的数据