Knockout.js 如何在击倒js中停止在计算函数上触发可观察到的?
我是KnocoutJs的新手。非常感谢您的帮助。 我想在单击div时调用这个函数,并且应该在computed函数中调用相同的函数。下面是我的功能Knockout.js 如何在击倒js中停止在计算函数上触发可观察到的?,knockout.js,Knockout.js,我是KnocoutJs的新手。非常感谢您的帮助。 我想在单击div时调用这个函数,并且应该在computed函数中调用相同的函数。下面是我的功能 DetailViewModel.prototype.DisplayChange = function (name) { this.currentSelection(name); switch (this.currentSelection()) { case "abc": { this.ab
DetailViewModel.prototype.DisplayChange = function (name) {
this.currentSelection(name);
switch (this.currentSelection()) {
case "abc":
{
this.abc();
break;
}
case "xyz":
{
this.showxyz();
break;
}
}
};
<div class ="TestTabs" data-bind="foreach: availableTabs">
<div class="Tab-ListItem"
data-bind="text: $data, click: $parent.DisplayChange.bind($parent),
css : {tabSelected : $parent.currentSelection() == $data}">
</div>
</div>
我在点击.cshtml文件和内部计算函数时调用这个函数
DetailViewModel.prototype.DisplayChange = function (name) {
this.currentSelection(name);
switch (this.currentSelection()) {
case "abc":
{
this.abc();
break;
}
case "xyz":
{
this.showxyz();
break;
}
}
};
<div class ="TestTabs" data-bind="foreach: availableTabs">
<div class="Tab-ListItem"
data-bind="text: $data, click: $parent.DisplayChange.bind($parent),
css : {tabSelected : $parent.currentSelection() == $data}">
</div>
</div>
即使我在单击时调用DisplayChange(),它也会在compselectedData()中触发。
如何在单击时停止触发计算函数?您有一个无限循环:
- 如果 当前选择已修改李>
- currentSelection在计算的内部进行修改
<div class ="TestTabs" data-bind="foreach: availableTabs">
<div class="Tab-ListItem"
data-bind="text: $data, click: $parent.currentSelection($data),
css : {tabSelected : $parent.currentSelection() == $data}">
</div>
</div>
DetailViewModel.prototype.DisplayChange = function (name) {
switch (this.currentSelection()) {
case "abc":
{
this.abc();
break;
}
case "xyz":
{
this.showxyz();
break;
}
}
};
这就是击倒的美妙之处,您只需更改模型,视图就会自动更新。但是。点击标签怎么样。这意味着me对象不支持属性apply。我想我需要在单击选项卡时调用DisplayChange函数。请给我一些建议Hi nemesv,你能给我一些建议吗?