当前位置: 首页 > 知识库问答 >
问题:

OrderBy在Chrome排序不同于其他浏览器

朱渝
2023-03-14

我注意到Chrome中的orderBy排序与其他浏览器中的排序不同。

我正在为角1.3中的一个项目写作。

对于特定的浏览器没有特殊的逻辑,两个数组完全相同。

谓词是显式定义的:

$scope.predicate = 'style';
$scope.reverse = true;

我的ng重复看起来像这样:

<tr ng-repeat="line in model.resultList | orderBy:predicate:reverse">

我的代码没有什么特别之处。但是,“大小”是字符串(例如大小:“8-”、…、大小:“6”、…)。为什么Chrome上的排序方式与其他浏览器完全不同?

我所有的结果都是从后端按样式分组排序,然后按大小递增。当主排序设置为Angular(在本例中为Style)时,Chrome将混合已排序的大小。请参阅下面的Plnk(在Chrome和IE/FireFox中打开以查看差异)

http://plnkr.co/edit/6TO8pZZ8jZ8Tytw6wHpQ?p=preview

共有1个答案

邢浩邈
2023-03-14

没有错。由于您正在按其他字段排序-大小可以以任何方式进行洗牌。orderBy依赖于浏览器(源)的内置排序功能。浏览器的实现可能不同。排序不应该是稳定的(MDN,ES2015标准部分)。

如果您想实现一致的行为,请使用按多个字段排序。就像

orderBy:[predicate, 'size']:reverse
 类似资料:
  • 我很难让谷歌字体在Chrome中工作 我正在使用Google的建议链接元素来检索字体(开发工具确认它工作正常)。 Link rel="样式表"href="http://fonts.googleapis.com/css?family=Roboto压缩:400italic" 在CSS文件中,我将所有h2、按钮、选择和输入元素的字体系列设置为“机器人浓缩” 在Google Chrome中,只有字体不显示

  • 我有综合科。用于深度链接的io SDK。 我的深度链接的流程是,当我点击URL时,它将打开我的应用程序,如果它已经安装在用户手机中,否则它将重定向到play store,用户可以安装该应用程序。 如果我使用chrome浏览器浏览链接,这个流工作得很好,但如果我使用UC、Opera或三星默认浏览器等任何其他浏览器应用进行浏览,这个流都不工作,不管怎样,它都会重定向到play store。 任何人有解

  • 控制台的使用 控制台查看源码 控制台的 Sources标签可以查看源码。按住快捷键「cmd + P」,可以根据文件名查找源码文件。 其他 show user agent shadow DOM 把上图中的红框部分打钩。

  • 问题内容: 我具有使用以下CSS应用的阴影效果: 有谁知道其他浏览器的等效功能。 请注意,我无法使用,因为这不会在形状的css箭头部分周围应用阴影效果 问题答案: 好的,我已经弄清楚了-Opera和firefox的等效项是: drop-shadow.svg如下所示: IE太糟糕了,不支持svg值feOffset,feFlood或feMerge,因此当前没有等价物 我将保留这种开放性,以防有人弄清楚

  • 确保你的网站能够在Chrome和Android上正常运行后,你的工作并没有结束。即使Device Mode(设备模式)可以模拟一系列其他设备,如iPhone,我们鼓励你查看模拟其他浏览器的解决方案。 TL;DR 当您没有特定设备时,或想做某些事情的抽查,最好的选择是在浏览器中直接模拟设备。 设备仿真器和模拟器让你在工作站的各种设备上模拟你开发网站。 基于云的模拟器允许你跨不同平台为你的网站自动化单

  • 我有一个令人难以置信的问题,我似乎无法解决。 在我的世界里,通过PHP提供WebM文件并不是什么新鲜事,我甚至知道如何处理HTTP 206部分内容。但由于某些原因,Chrome不喜欢它。 一个简单的HTML5视频播放 其中在Apache中被重写为PHP文件,可以正常播放。但在Chrome中,seekbar并不有效。当点击seekbar时,播放器将冻结,直到页面刷新后才会播放。Firefox处理得很