我是淘汰赛的新手。所以请看下面的代码并告诉我哪个函数将被视为视图模型?
有两个函数一个是CartLine
,另一个是Cart .............这个函数会被视为视图模型吗?
请参阅此代码ko.applyBindings(new Cart());
应用绑定指向购物车功能.......这是否意味着cart()
将被视为视图模型?如果是,那么我们应该CartLine()
?它是子视图还是嵌套视图模型?
var CartLine = function () {
var self = this;
self.products = ko.observableArray(_products);
self.product = ko.observable(1);
self.price = ko.observable(1);
self.quantity = ko.observable(1);
self.product.subscribe(function(item){
if(!item)
{
self.price(0);
self.quantity(0);
return;
}
self.price(item.price);
self.quantity(item.quantity);
});
self.subtotal = ko.computed(function () {
return self.price() * self.quantity();
},self);
};
var Cart = function () {
// Stores an array of lines, and from these, can work out the grandTotal
var self = this;
self.lines = ko.observableArray([new CartLine()]); // Put one line in by default
self.formatCurrency = formatCurrency;
};
答案 0 :(得分:0)
如果您将所有代码都包含在这样的变量中:
var viewModel = {
//your code here
}
然后像这样调用你的apply绑定:
ko.applyBindings(new viewModel());
所有内容都将出现在您的视图模型中。
有关详细信息,请参阅此链接:http://knockoutjs.com/documentation/observables.html