Template 優化與 Getter 使用
為什麼要優化?
原始寫法:
<img [src]="'assets/users/' + {{this.selectedUser.avatar}}" alt="{{selectedUser.name}}">
問題:
Template 邏輯太複雜
字串拼接在 HTML 中不易維護
混用了插值語法
{{}}
和屬性綁定[]
優化後寫法
component.html:
<img [src]="imagePath" [alt]="selectedUser.name">
component.ts:
export class UserComponent {
get imagePath() {
return 'assets/users/' + this.selectedUser.avatar;
}
}
優點
關注點分離
HTML 專注於結構
邏輯移至 Component
可維護性
路徑邏輯集中管理
易於修改和測試
可重用性
getter 可在其他地方重用
邏輯統一,避免重複代碼
程式碼更簡潔
Template 更容易閱讀
減少模板語法混用
Last updated