这个问题在我的原始和第一个问题'Nested Data, Loading Children'之后。KnockoutJS - 行和列计算
我有一个表中填充了来自包含嵌套对象的JSON的数据(请参见颜色编码)。该表包含每个可编辑对象的一行。这称为“分配”行。
这些值由JSON对象填充(“Values”:{“ n”:4,“n2”:2等)。
首先我想显示每个可编辑行的总数。由于值在行内更新了总更新。这个背后的用例是我想比较原始总数(Allocation.Total)和可观察总数,所以我可以更改控件单元格上的css类以指示数据是否已更改。
这如下所示; (黄色指示的用户的变化)
http://i.stack.imgur.com/XQpLp.jpg
问题的第二部分是处理一列总计。上面的问题让我的头部受到了一点伤害,但是这个打击了我的头脑。因此,我会睡在那一个,然后更新问题,一旦它变得更清楚一点。
从使用简化的数据模型出现了一种复杂化。通过说所有事物都是相同类型的对象,(机组人员),当节点有孩子时,用于分配的词需要改变。如果节点有儿童'分配'应该被称为指南。
Simplified Code Example here...
与柱体部...的Allocated.Total更新,是一个运行总的划分。这里的区别在于这个总数正在表格的列中排列,没有排在单个行上。这甚至有可能吗?我的思绪开始融化了一点。
更新 - 四月 26日
对于列总计虽然可以通过硬编码针对节点1,节点2,节点3接近这一点。我希望避免这种情况,因为这些是根据用户/请求而改变的节点(例如,它不总是节点1,节点2,节点3)。我已经在HTML模板中解决了这个问题,因为这些信息可以在服务器端找到,使我能够使用正确的绑定来提供页面。
我可以对JavaScript使用相同的方法,但是当我们从API中加载数据时,必须可以动态获取这些信息,然后JavaScript仍然很干净。我一直在研究如何迭代(键,对)值,所以node1,node2,node3位可以变为动态的。然而,这是我陷入困境的地方。
第二部分,它变得非常复杂。总分是我之后的一部分,但我也需要每个专栏的总额(周一 - 早餐,周一 - 午餐,周一 - 晚餐)。这从最深的节点级联到最高级。
Redeemed也是如此。因此,一个人可以兑换一张票,它一直反映到父节点。作为喜欢XPath的人,这将是祖先或自己::船员。
令人难以置信的帮助!谢谢,我已经能够在此基础上实现一些附加功能。我已经更新了原始文章,并在Columns位上详细说明了这个问题,它有点儿怪异。 – uniquelau 2012-04-26 15:42:59
嗨@madcapnmckay - 重新编辑之后您有什么进一步的想法吗?明天再去看看,看看还有什么我可以想出来的,否则,我会标记为已解决(再次感谢!)Lau – uniquelau 2012-05-02 15:52:33
@uniquelau - 嗨,对不起,我迟到了。最近很多,动态问题应该可以通过遍历Values对象来解决(见编辑),其他的总计应该能够以与grandTotal类似的方式计算,但是限制在那个特定的索引(列)。首先得到这个最低级别的节点,然后让父节点和他们的孩子一起工作 – madcapnmckay 2012-05-07 04:37:38