【问题标题】:The setInitialData function no work设置初始数据功能不起作用
【发布时间】:2017-01-09 16:11:31
【问题描述】:

我有一个客户模型。

class Customer { 
    public CustomerName = ko.observable(null);
    public LastModifiedBy = ko.observable(null);
}

在我创建一个新实例并想设置一些默认值之后。

var myEntities = ko.observableArray()
var model = new Customer();
setDefault(model);
myEntities.push(model);

方法如下:

setDefault(m){
    m.CustomerName('Init');
    m.LastModifiedBy('Init')
}

但这不起作用。 我在我的视图中看不到数据。

data-bind="foreach:     myEntities()"
data-bind="text:     CustomerName"

我遇到了什么问题?

【问题讨论】:

标签: knockout.js typescript


【解决方案1】:

看起来您只是在操作变量,而不是创建视图模型并与它的成员一起工作。这是一个使用(几乎)您的代码的工作示例。

function Customer() {
  this.CustomerName = ko.observable(null);
  this.LastModifiedBy = ko.observable(null);
}

function setDefault(m) {
    m.CustomerName('Init');
    m.LastModifiedBy('Init')
}

var myEntities = ko.observableArray()
var model = new Customer();
setDefault(model);
myEntities.push(model)

ko.applyBindings({
  myEntities: myEntities
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.2.0/knockout-min.js"></script>
<div data-bind="foreach:     myEntities">
  <div data-bind="text:     CustomerName">
  </div>
</div>

【讨论】:

    猜你喜欢
    • 2017-12-19
    • 1970-01-01
    • 2020-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-16
    • 2020-01-18
    相关资源
    最近更新 更多