我是软件开发的一个完整的初学者,并且被介绍给一个我很难理解和知道从哪里开始的项目
this.isConfirmationCar = ko.computed(() => {
if (this.selectedTemplate() && this.selectedTemplate().Id ===
<number>Enums.PolicyEmailTemplates.ConfirmationOfCoverCar) {
return true;
} else {
return false;
}
});
答案 0 :(得分:3)
它似乎正在返回布尔值并将其存储在this.isConfirmationCar
中。
这是对/否取决于定义为-
{ if (this.selectedTemplate() && this.selectedTemplate().Id === Enums.PolicyEmailTemplates.ConfirmationOfCoverCar) { return true; } else { return false; }
仅供参考-Knockoutjs的网站非常出色,并提供了出色的教程http://learn.knockoutjs.com/#/?tutorial=intro
它涵盖了介绍中的ko.computed函数,值得一看!
答案 1 :(得分:1)
您所拥有的是computed observable,仅是在其主体tracks
内部使用的任何其他可观察函数。它不仅会跟踪它,而且还会在那些跟踪的可观察值变异时一次又一次地执行自身。
计算的可观察物非常有用。请注意,就如何定义它们而言,它们具有各种“选项”,还有一些有趣的siblings
,例如pureComputed observables。
在此示例中,计算出的isConfirmationCar
用于跟踪其他可观察值selectedTemplate
和selectedTemplate
的值。用这些值计算出的任何更改都会刷新其值,这就是为什么在此上下文中将其用于跟踪isConfirmationCar
的原因。
希望这会有所帮助。