Coffeescript无法更新实例属性

时间:2012-03-25 18:37:37

标签: coffeescript

我无法访问和更新我认为是coffeescript中的实例属性。我正在尝试更新@cart_total。我第一次更新总数,它工作正常。但是,它只在第一次工作。似乎@cart_total只更新一次。

以下是代码:

class Cart 

  constructor: ()->
    @cart_total = 0.00 


  updateTotal: (amt)->
    @cart_total = @cart_total + amt


  this.updateTotal( @lineItem.total )

当我调用updateTotal时,它似乎只是第一次工作。我真的很感激任何帮助 - 谢谢!

编辑:

我从班级中调用updateTotal。我添加了上面的代码。

1 个答案:

答案 0 :(得分:0)

由于您正在定义一个类,因此任何函数调用都应该在一个方法中。除非你试图创建类方法或变量,否则我不相信你想要在这里完成的。

这可能会有所帮助:

class Cart 
    constructor:       -> @cart_total  = 0 
    updateTotal: (amt) -> @cart_total += amt
    getTotal:          -> @cart_total
    addTen:            -> @updateTotal 10

cart = new Cart

cart.updateTotal 9.50
console.log cart.getTotal()

cart.updateTotal 19.50
console.log cart.getTotal()

cart.addTen()
console.log cart.getTotal()​​​​​​​​​​​​​​​​​​

注意:间距是多余的,但我喜欢它的样子。祝你好运。