gpt4 book ai didi

Angular2 为什么 getters 如果我们可以定义公共(public)属性

转载 作者:搜寻专家 更新时间:2023-10-30 21:20:05 24 4
gpt4 key购买 nike

当我们可以直接从模板访问属性时,为什么要复制代码来定义 getter?

最佳答案

您不必使用 setter/getter 。它们仅在每次访问属性时都需要执行一些逻辑时才有用。

示例:您的属性值源自代码中其他属性的值(这些其他值会随时间变化)。您不能一劳永逸地将值存储在属性中,因为每次其他值更改时都必须重新计算它。 (想想购物车组件中的总计,它是通过将每个产品的价格乘以单位数量获得的。)

本质上,getter 属性类似于调用函数。但是在模板中,有些人更喜欢编写 {{ myValue }} 而不是 {{ getMyValue() }}

在 Angular 中访问器的另一个用途是实现一个 setter 来响应属性值的变化。该文档有一个组件的示例,其@Input 更改并且该组件需要对此使用react。参见 https://angular.io/docs/ts/latest/cookbook/component-communication.html#parent-to-child-setter .

关于Angular2 为什么 getters 如果我们可以定义公共(public)属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41749149/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com