OrderBy Date 值,在 Angular JS 中只是字符串

2023-11-25

我试图按日期排序一些数据,尽管日期只是字符串,格式为 dd-mm-yyyy。

我制作了一个过滤器,将纯数字字符串(在美国日期格式中,我想要在英国日期格式中)例如 01272012 转换为 27-01-2014,但是当我尝试订购它们时,它仍然只将它们视为数字字符串,因此 01-01-1990 将出现在 02-01-2014 之前。

关于如何在过滤器中执行此操作有什么建议吗?

Thanks!

Update

我发现如果日期格式是 yyyy-mm-dd,日期会自动排序。然后我用了二手的orderBy:['date']要对数据进行排序,仅在显示数据时使用我原来的过滤器。

我最终不得不反转我的数据,显示最近的日期。为了实现这一点,我添加了一个-按照我的订单按声明:orderBy:['-date'].


Because orderBy过滤器,你可以使用它。 你的 ng-repear 可能看起来类似于:

ng-repeat="item in items | orderBy: orderByDate"

然后在你的控制器上你可以定义orderByDate功能:

$scope.orderByDate = function(item) {
    var parts = item.dateString.split('-');
    var date = new Date(parseInt(parts[2], 
                        parseInt(parts[1]), 
                        parseInt(parts[0]));

    return date;
};

该功能的实现由您决定。我选择创建Date从字符串中。您返回的对象orderByDate然后使用 运算符来排序函数。

EDIT:解决方案:reverse

Since :reverse不能与作为参数传递的函数一起使用,您可以实现自定义函数以返回反转值本身。在这种情况下使用Date不可能,我会构造一个数字并用减号返回它:

$scope.orderByDate = function(item) {
    var parts = item.dateString.split('-');
    var number = parseInt(parts[2] + parts[1] + parts[0]);

    return -number;
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

OrderBy Date 值,在 Angular JS 中只是字符串 的相关文章

随机推荐

  • 使用 JUnrar 提取文件

    我之前问过一个关于用 Java 提取 RAR 存档的问题 有人向我推荐了 JUnrar 官方网站已经关闭 但它似乎被广泛使用 因为我在网上发现了很多关于它的讨论 有人可以告诉我如何使用 JUnrar 提取存档中的所有文件吗 我在网上找到了一
  • 在 PyInstaller 中打包多个脚本

    我正在使用 PyInstaller 将两个脚本转换为一个可执行文件 其中一个脚本调用另一个脚本 我遇到的问题是我无法弄清楚如何捆绑两个脚本并仍然让它们相互引用 导致问题的代码是一个脚本 script1 py包含 subprocess cal
  • 数据库清理器无法在 minitest 轨道中工作

    如果我单独运行 我的 Minitest 控制器测试工作正常rake minitest controllers但当我跑步时rake minitest all然后我收到验证失败错误 这是因为模型测试中已经使用了电子邮件 我使用DatabaseC
  • 使用 SF 符号时调整图像大小 - UIImage(systemName:)

    我有以下预打包的系统 SF 映像 UIImage systemName location fill 它可能看起来微不足道 但我如何调整它的大小以使其更大 谢谢 你可以实例化一个UIImage SymbolConfiguration 例如 您
  • webpack + babel loader 源映射引用空文件

    我有一个 es6 项目 我使用 webpack babel loader 捆绑它 当我打开开发工具时 我可以在下面看到 webpack 和我的所有源代码 es6 问题是 断点没有命中 函数引用将我定向到文件名 d41d 其中有以下内容 un
  • Thor 和 YAML 以二进制输出?

    我正在使用 Thor 并尝试将 YAML 输出到文件中 在 irb 中我得到了我所期望的 YAML 格式的纯文本 但是当作为雷神方法的一部分时 它的输出是不同的 class Foo lt Thor include Thor Actions
  • Crosswalk 无法解析配置“:_armv7DebugCompile”的所有依赖项

    直到几天前我使用Crosswalk 18 成功构建了我的应用程序 今天我遇到了这个错误 What went wrong A problem occurred configuring root project android gt Could
  • DateUtils.getRelativeTimeSpanString 用于未来日期

    因此 Android SDK 中的 DateUtils getRelativeTimeSpanString 1 非常适合显示过去的相对时间 即 5 天前或 5 分钟前 但对于未来的日期似乎不太适用 好像只是打印日期 是否有任何简单的替代方法
  • 如何初始化var?

    我可以用 null 或一些空值初始化 var 吗 C is a 严格 强类型语言 引入 var 是为了编译时类型绑定匿名类型然而 您可以将 var 用于设计时已知的原始类型和自定义类型 在运行时 没有像 var 这样的东西 它被替换为实际类
  • 无法确定名为 的参数的 GraphQL 输入类型

    我有两个相关模型 1 角色实体 import Column Entity BaseEntity OneToMany PrimaryColumn from typeorm import Field ObjectType from type g
  • 在c#中捕获游戏屏幕截图最快的方法?(每秒超过20张图像)

    如何快速截取整个游戏屏幕 大约每秒 20 30 次 我想将它们转换为视频 1 我尝试过 WMEncoder 结果是 WMEncoder 只能使用一组预配置的编解码器以视频格式 wma 捕获屏幕和屏幕区域 29 fps 最佳编码结果 WMEn
  • itertools.groupby 的意外行为

    这是观察到的行为 In 4 x itertools groupby range 10 lambda x True In 5 y next x In 6 next x StopIteration Traceback most recent c
  • 访问 .Net 中的自定义配置部分

    我正在尝试访问配置文件中的设置 该文件是一系列列出的 xml 元素 如下所示
  • 在 AS3 中查找(加载)图像大小(动作脚本 3.0)

    我目前使用以下函数来加载图像 但是我无法找到找到加载图像宽度的方法 我打算在使用相同函数放置下一个图像之前使用它 请注意 q 是一个变量 数字 用于加载不同的图像 X 我需要帮助获取加载的图像宽度 function LoadImage q
  • 获取图像中每种颜色的使用百分比

    我有这个工作 但它在 jpeg 图像上太慢了 还需要一些改变 我需要知道图像中的各个颜色 RGB 的容差为 1 以及该颜色占图像的百分比 所以如果图像是黑白的 它会说类似 白色 74 黑色 26 下面的代码就像我说的那样工作 但我还需要添加
  • 使用 .htaccess 从 URL 中删除“index.php”

    我一直在尝试该网站上的各种解决方案 但似乎都不起作用 我目前正在使用 Hostgator 进行托管 这是我当前的 htaccess 文件
  • Android:DatePicker 和 DatePicker 对话框

    我在选项菜单上有这个代码 Dialog dialog new Dialog ScheduleActivity this dialog setTitle Add Event dialog setContentView R layout add
  • 是否可以在 MongoDB 之上实现多版本并发控制 (MVCC)?

    MongoDB 对我来说是一个很棒的数据库 然而 在某些情况下 我确实需要原子多文档事务 例如 在帐户之间转移事物 例如金钱或声誉 这需要完全成功或完全失败 我想知道是否可以通过实现多版本并发控制模式的库与 MongoDB 进行交互 表演会
  • linux汇编:如何调用系统调用?

    我想在汇编中调用系统调用 问题是我不能mov ecx rsp rsp是64位寄存器 ecx是一个32位寄存器 我想将缓冲区地址作为此系统调用的参数传递 我能做些什么 谢谢 section data s0 db Largest basic f
  • OrderBy Date 值,在 Angular JS 中只是字符串

    我试图按日期排序一些数据 尽管日期只是字符串 格式为 dd mm yyyy 我制作了一个过滤器 将纯数字字符串 在美国日期格式中 我想要在英国日期格式中 例如 01272012 转换为 27 01 2014 但是当我尝试订购它们时 它仍然只