【问题标题】:Knockout dynamically updating observableArray values淘汰赛动态更新 observableArray 值
【发布时间】:2014-05-06 10:55:45
【问题描述】:

我的淘汰赛应用中有以下结构:

  • 一个计算值,它是两个 observables (comp1) 的总和
  • observableArray(默认为空白)
  • 通过单独的 viewModel 函数推入 observableArray 的一组数据

我的问题在于,当计算出的 observable (comp1) 被推入数组时,当它在主表中更新时(通过单独的 viewModel 函数)显示在表中时,它的值不会改变查看。

我已经设置了一个 codepen 来更好地解释问题并使其更清楚地理解,因为我真的不认为我已经很好地解释了这个问题,而且解释起来有点复杂文字!

简而言之:当 (comp1) 的值在主视图中更新时,它不会在表内更新(由 observableArray 生成)。

如果您有任何不确定的地方,请询问,但我认为一旦您查看 Codepen,一切都会变得更加清晰。

http://codepen.io/anon/pen/nwgGB

【问题讨论】:

    标签: javascript jquery knockout.js knockout-2.0


    【解决方案1】:

    因为您传递的是 maths_total (self.maths_total()) 的展开值。这样tableView 不知道该值何时更改。相反,您应该传递实际的 observable:

    self.table_totals.push(new tableView('column 1', 15, self.maths_total, 45));
    

    然后检查tableView里面的变量

    self.val_2 = ko.isObservable(val2) ? val2 : ko.observable(val2)
    

    http://codepen.io/anon/pen/qFsgu

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多