1:对象赋值 self.HistoryInfo(data.data);  //data.data 是返回的数组数据 ,直接赋值给  self.HistoryInfo ,使用文件:claims.index.js
	注意:如果数组里面有二维数据,二维数据就不是ko对象, 最好使用循环 赋值。
2: ko.mapping.fromJS(对象) 把 对象转换成 ko js  如:  self.ProductIndexList(ko.mapping.fromJS(d[0])); 

3:属性判断绑定
    <div style="" data-bind="foreach:ProductInfo().Plans">  
        <!-- ko if: IsCheck -->
        <div class="customProductDetailstitle" style="">
            本保险产品由<span data-bind="text:PlanName"></span>承保并负责理赔
        </div>
        <!-- /ko -->
    </div>

4:attr 属性: 如:href: <a data-bind="attr:{href:'/Product/details?id='+Id+'&insurerID='+CorporationID}">
5:循环时获取父级的属性。 <a class="tab-link active button TabCustomPlan" data-bind="attr:{name:PlanID()+'-'+$parent.InsurerID()}"><span data-bind="text:PlanAbbr"></span></a> 6: click:$root.方法 这样可以取得该行的数据 7:编辑时赋值给 对象: self.WxConfigViewModel(initWxConfigViewModel(data.data)); //taxpayer.edit.js里面的self.Loading方法里面用到有 8: 循环绑定对象,给每个对象添加 单击事件 data-bind="click: $parents[1].selectSpan2" ,关键:$parents[1] 解释:在当前级别上一级 <!--ko foreach:{data:$parent.WaitSelectObject}--> <div class="p1BackColor selectSpan" data-bind="click: $parents[1].selectSpan2" title="单击选择"> <span data-bind="html:UserName()+'['+CorporationAbbr()+'-'+NickName()+']'">XXX</span> <span style="color:red;cursor:default">选择</span> </div> <!--/ko--> 9:值改变时触发 model.PlanName.subscribe(function (newValue) { });