angularJS 数组更新时重新排序之解决方案一:这个坑,绕开吧,不跳了……
今天产品大人发现了一bug,图表数据和数据库总是对不上,原因是当前端更新数组时,angularJS默认对数组进行了排序。
// 点击事件:input复选框
$scope.fnClickUpdateAreas = function ($event,areaCode,areaName) {
if ($event.target.checked) {
$scope.areaCodes.push(areaCode);
$scope.areaNames.push(areaName);
}
}
查看代码
当再次更新areaCodes和areaNames时,发现areaCodes自动排序了,和areaNames无法一一对应了,原因很简单,areaCodes是数字,而areaNames是文字。一直在找怎么阻止angularJS自动排序的方案,结果没找到,结果只能用以下办法解决了:
// 点击事件:input复选框
$scope.fnClickUpdateAreas = function ($event,areaCode,areaName) {
// 更新service中的地区代码数组
if ($event.target.checked) {
$scope.areas.push(
{
'name': areaName,
'code': areaCode
}
);
} service.areaCodes = [];
service.areaNames = [];
for (var i = 0; i < $scope.areas.length; i++) {
service.areaCodes.push($scope.areas[i].code);
service.areaNames.push($scope.areas[i].name); }
}
查看代码
angularJS 数组更新时重新排序之解决方案一:这个坑,绕开吧,不跳了……的更多相关文章
- SQL SERVER 2008 R2 SP1更新时,遇上共享功能更新失败解决方案
SQL SERVER 2008 R2 SP1更新时,遇上共享功能更新失败的问题,可作如下尝试: 更新失败后,在windows的[事件查看器→应用程序]中找到来源为MsiInstaller,事件ID为1 ...
- [转]AngularJS: 使用Scope时的6个陷阱
在使用AngularJS中的scope时,会有6个主要陷阱.如果你理解AngularJS背后的概念的话,这6个点其实非常的简单.但是在具体讲述这6个陷阱之前我们先要讲两个其它的概念. 概念1: 双向数 ...
- ch7-列表渲染(v-for key 数组更新检测 显示过滤/排序结果)
1 说明 我们用 v-for 指令根据一组数组的选项列表进行渲染. v-for 指令需要以 item in items 形式的特殊语法, items 是源数据数组并且 item 是数组元素迭代的别名. ...
- .net 项目 调用webservice 出错,异常信息:对操作“xxx”的回复消息正文进行反序列化时出错。解决方案。
项目运行好好的,增加并更新WebService后,出错,捕获异常信息为:对操作“xxx”的回复消息正文进行反序列化时出错.解决方案. 认真分析异常信息后,得到关键提醒: {"读取 XML 数 ...
- Vue数组更新及过滤排序
前面的话 Vue为了增加列表渲染的功能,增加了一组观察数组的方法,而且可以显示一个数组的过滤或排序的副本.本文将详细介绍Vue数组更新及过滤排序 变异方法 Vue 包含一组观察数组的变异方法,它们将会 ...
- vue数组更新界面无变化
1. vue数组更新界面无变化 1.1. 说明 对数组进行更新或者添加,一定要注意方式,我的情况是数组套数组,双重循环,在造数据的时候,不断从尾部添加数据,所以写成了如下形式,每次下拉都会去加载一批相 ...
- vue 在有大数据量的 table 中使用弹窗 input 输入数据时卡顿解决方案
vue 在有大数据量的 table 中使用弹窗 input 输入数据时卡顿解决方案 原因:vue在进行输入时,进行了多次的render刷新渲染操作,导致了input框输入时发生的卡顿现象 解决方法:在 ...
- vue 数组更新(push【可用】,$set,slice,filter,map【都属于浅拷贝】)问题
this.$axios.post('https://....php',this.$qs.stringify({ user: 'suess' })) .then(res => { this.dat ...
- SQL Server 统计信息更新时采样百分比对数据预估准确性的影响
为什么要写统计信息 最近看到园子里有人写统计信息,楼主也来凑热闹. 话说经常做数据库的,尤其是做开发的或者优化的,统计信息造成的性能问题应该说是司空见惯. 当然解决办法也并非一成不变,“一招鲜吃遍天” ...
随机推荐
- [Java] 匿名内部类
package test.file; import java.io.File; import java.io.FilenameFilter; /** * 匿名的内部类 * @author Frost. ...
- 问答精华-IntelliJ IDEA快捷键大全
这篇文章介绍了idea的默认快捷键http://www.jikexueyuan.com/blog/229.html 另外:老师将快捷键设置为eclipse的了,你需要在preference里面找到ke ...
- C#中List的Find方法的使用
查找List中的某个值,可以使用循环遍历对比,查找出结果.C#中提供了Find方法,可以直接使用,只要查找条件传入就可.如下: public class RecordInfo { private st ...
- SQL Server 2012 Enterprise Core Edition和SQL Server 2012 Enterprise Edition的区别
core没有图形界面,只有power shell界面,给没有图形界面的windows用的.
- keypress
onKeyUp="keypress2(this,140)" onblur="keypress2(this,140)"<span>你还可以输入140个 ...
- 【转】 利用.dSYM和.app文件准确定位Crash位置
http://blog.csdn.net/jinzhu117/article/details/20615991 首先,确保在release(Ad Hoc或者App Store)一个版本时,保存了对应的 ...
- Spark Standalone模式伪分布式环境搭建
前提:安装好jdk1.7,hadoop 安装步骤: 1.安装scala 下载地址:http://www.scala-lang.org/download/ 配置环境变量: export SCALA_HO ...
- leetcode 349:两个数组的交集I
Problem: Given two arrays, write a function to compute their intersection. 中文:已知两个数组,写一个函数来计算它们的交集 E ...
- Android wifi状态三种广播
public class NetworkConnectChangedReceiver extends BroadcastReceiver{ @Override public voi ...
- Drupal8开发教程:模块开发——创建新页面
之前我们已经通过<Drupal8开发教程:认识.info.yml文件>对模块的YAML文件有了了解,今天我们来看如何通过模块开发的方式添加一个新的页面. 在 Drupal 7 中,通过模块 ...