在处理NgRx时,为什么要使用Typescript Getter来显示模板上的属性



在研究这个NgRx示例应用程序时,我注意到使用Typescript Getter在模板视图上显示属性值。这里有一个例子:

<mat-card-title>{{ title | bcEllipsis:35 }}</mat-card-title>

get title() {
return this.book.volumeInfo.title;
}

为什么不直接使用getTtile()方法,或者像book.volumeInfo.title一样简单地调用对象属性呢?在处理NgRx或Angular时,get方法是目前更好的做法吗?

在我看来,这只是一种干净的代码方法。模板中有title肯定比this.book.volumeInfo.titlegetTitle()可读性强得多。实际上get title()也是函数,就像getTitle()一样。

额外:但老实说,这不是将值从组件绑定到模板的最佳方式,因为您必须调用模板上的一些函数(这不是最佳选项(。如果你真的不需要的话,你应该避免在模板上调用任何函数或计算任何计算。相反,你可以只绑定一个属性。

EDIT 1使用手动更改检测时,最好将模板上的所有值保留在属性中。例如,您可以创建名为state的属性,该属性包含每个与模板相关的值。然后,随着状态属性值的每次更改,您都可以检测到更改。通过这种方式,您将获得某种干净的代码和性能。

最新更新