我有一个viewModel。
var Vm = function() {
var self = this;
self.severityList = ko.observableArray(ko.utils.parseJson('@Html.Raw(jsonData)'));
self.deactivateSeverityLevel.bind(this);
};
ko.utils.extend(Vm.prototype, {
deactivateSeverityLevel: function(item) {
}
});
我需要访问ko.utils.extend中的severityList。 我尝试在.extend中添加Vm.severityList,但它不起作用..
答案 0 :(得分:0)
您将使用this.severityList
内的deactivateSeverityLevel
访问严重性列表。
根据您拨打的位置,您可能需要使用bind
来确保this
正确无误。
如果你在自己的范围内绑定它,那么没有像bind
这样的<button data-bind="click: deactivateSeverityLevel">Deactive</button>
调用就可以了:
$parent
如果您绑定到其他范围(例如bind
),那么您需要 <button data-bind="click: $parent.deactivateSeverityLevel.bind($parent)">Deactive</button>
它。你可以这样做:
var Vm = function() {
this.severityList = ko.observableArray(ko.utils.parseJson('@Html.Raw(jsonData)'));
this.deactivateSeverityLevel = this.deactivateSeverityLevel.bind(this);
};
ko.utils.extend(Vm.prototype, {
deactivateSeverityLevel: function(item) {
//access this.severityList()
}
});
或:
deactivateSeverityLevel
在最后一个示例中,您将通过将实现与原型this
的当前值绑定在实例上来创建{{1}}函数的绑定版本。