在Knockout购物车中创建总成本函数

时间:2015-02-01 21:25:45

标签: javascript knockout.js

我是js淘汰赛的新手,并负责为购物车添加功能。我已经为购物车中商品的总成本创建了一个功能,但它不起作用(代码在下面突出显示)。

我的问题是:如何更改此功能或创建新功能,输出购物车中商品的总成本,如果商品被移除或商品数量发生变化,该功能会发生变化?< / p>

以下是购物车的代码和简要说明:

http://jsfiddle.net/b4atrw2g/5/

购物车有两个主要部分。在“添加新项”部分中,用户输入项目的名称,成本和数量,然后单击“添加项目”。

该项目随后会显示在“购物车中的商品”部分中,其中包含成本和数量。用户仍然可以在购物车中更改商品的数量。

我创建了一个名为'getTotalCost'的函数,但是在将项目添加到购物车之前输出项目的总成本,并在项目添加到购物车后消失。

这是功能:

viewModel.getTotalCost = ko.pureComputed(function()

  {
    var total = 0;
    total += viewModel.newItemPrice() * viewModel.newItemQuantity();
    return total;
  },

  viewModel);

提前谢谢你。

1 个答案:

答案 0 :(得分:0)

viewModel.getTotalCost = ko.pureComputed(function() 
{
    var total = 0;
    arr = viewModel.itemsInCart();
    for (i = 0; i< arr.length;i++)
       total += arr[i].price * arr[i].quantity;
    return total; 
}

http://jsfiddle.net/b4atrw2g/6/