knockout 简单使用

定义:

    var QcViewModel = function () {
        var self = this;
        self.name = ko.observable();
        self.qty = ko.observable();
    };

     var RecordviewModel =function() {
        var self = this;
        self.temperature = ko.observable('80');
        self.prodname = ko.observable('D成型');
        self.typename = ko.observable('L');
        self.ftargetqty = ko.observable(1000);
        self.prodqty = ko.observable(500);
        self.rate = ko.observable(50);
        self.rateless = ko.observable(50);

        self.Detail1 = ko.observableArray([new QcViewModel()]);
        self.Detail2 = ko.observableArray([new QcViewModel()]);
        self.Detail3 = ko.observableArray([new QcViewModel()]);
    };

     var myViewModel = new RecordviewModel();

初始化:

ko.applyBindings(myViewModel);

修改值:

myViewModel.temperature(data.temperature);

var mapping = {
    'Detail1': {
        create: function (options) {
            var newItem = new QcViewModel();
            newItem.name(options.name);
            newItem.qty(options.qty);
            return newItem;
        }
    }, 'Detail2': {
        create: function (options) {
            var newItem = new QcViewModel();
            newItem.name(options.name);
            newItem.qty(options.qty);
            return newItem;
        }
    }, 'Detail3': {
        create: function (options) {
            console.log('Detail3:='+options);
            var newItem = new QcViewModel();
            newItem.name(options.name);
            newItem.qty(options.qty);
            return newItem;
        }
    }
};
ko.mapping.fromJS(Detail1, mapping, myViewModel.Detail1);
ko.mapping.fromJS(Detail2, mapping, myViewModel.Detail2);
ko.mapping.fromJS(Detail3, mapping, myViewModel.Detail3);

绑定:

<span data-bind="text: temperature"></span>

遍历:

<div class="col-sm-6 col-md-6" data-bind="foreach: Detail1()">
    <h2> <span style="color:red" data-bind="text: qty">90</span> <span style="color:greenyellow" data-bind="text: name"></span></h2>
</div>

 

转载于:https://www.cnblogs.com/CoreXin/p/knockout.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值