Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么我的可观察数组会丢失值?_Javascript_Knockout.js - Fatal编程技术网

Javascript 为什么我的可观察数组会丢失值?

Javascript 为什么我的可观察数组会丢失值?,javascript,knockout.js,Javascript,Knockout.js,我使用的是knockout v3.2,我在可观察数组方面遇到了问题 我正在创建一个可观察的数组 self.relatorioDataSources = ko.observableArray([]); 然后,我尝试在这个可观察数组中添加一个数组。 下面是我的阵列的图像(从chrome developer tools获取): 然后,我使用以下命令将其添加到我的可观察数组中: //self.relatorioDataSources is my empty observable array self

我使用的是knockout v3.2,我在可观察数组方面遇到了问题

我正在创建一个可观察的数组

self.relatorioDataSources = ko.observableArray([]);
然后,我尝试在这个可观察数组中添加一个数组。 下面是我的阵列的图像(从chrome developer tools获取):

然后,我使用以下命令将其添加到我的可观察数组中:

//self.relatorioDataSources is my empty observable array
self.relatorioDataSources(item.relatorioDataSources);
然后,我的可观察数组和我的公共数组将丢失idDataSource值:


您正在覆盖
observableArray值
,因此您希望按如下方式推送新元素
self.relatorioDataSources.push(novoDataSource)
,而且数据源没有id,因为
item.relatorioDataSources
的任何项都没有。

你能举一个简单的工作示例来演示这一点吗,比如在JSFIDLE上?它们正在覆盖现有的数组,但是显示的数据确实将idDataSource字段设置为实际值(86)。还有一些其他的数据操作正在发生,这就是为什么我们需要一把小提琴来证明这一点我同意,但只是为了解释发生了什么所以你同意你的答案不符合问题,但你只是想抛出一些东西?拜托,这不是我的目标,伙计,我的答案是让他知道发生了什么,这不像是编码器家族。