1

我有一个具有 observable 的 CoffeeScript 类 WorkOrderLabor ( http://arcturo.github.io/library/coffeescript/03_classes.html ) work_item_id

我想订阅这个可观察到的更改并运行一些代码。

这就是我正在做的事情:

self.addWorkOrderLabor = ->
  wol = new WorkOrderLabor()

  wol.work_item_id.subscribe = (val) ->
    console.log val

  self.work_order.work_order_labors.push(wol)

这行不通。它实际上会在调用函数时吐出,val但在 work_item_id 更改时不会吐出。

work_order_labors是一个可观察的数组。

这里最好的方法是什么?我究竟做错了什么?谢谢!

4

1 回答 1

1

您的 CoffeeScript 语法错误,因为您需要传入回调函数作为参数 subscribeko.observable

所以正确的语法是:

wol.work_item_id.subscribe (val) ->
    console.log val

所以不需要=which 顺便subscribe用一个新功能覆盖原来的。

于 2013-06-18T13:45:00.640 回答