SAP Spartacus 开发规范
官網
某些違反準則的行為可以通過一個名為 codelyzer 的工具自動檢測,該工具與 Angular CLI 捆綁在一起。 您可以使用以下命令分析 angular 應用程序:
side context
可以為每個頁面更改站點上下文。 對于不同的站點上下文,響應數據可能不同。 在頁面上工作時請記住這一點。
此外,登錄用戶和匿名用戶可能會看到不同的響應數據。 在頁面上工作時,請考慮到用戶可以通過登錄或注銷來更改其登錄狀態。
Module
盡量保持模塊盡可能小。 大多數情況下,一個模塊只有一個組件。 此外,我們應該始終嘗試減少模塊依賴性。
Protected and Private Methods
如果方法需要可擴展,請將其聲明為受保護的方法。 但是請記住,所有受保護的方法都是我們公共 API 的一部分。 如果您更新受保護的方法,則必須小心不要盡可能引入破壞性更改。 如果方法不需要可擴展,則將其聲明為私有。 例如,如果您要在服務中創建輔助方法以提高代碼可讀性,最好將這些方法聲明為私有方法,除非這些方法必須可由客戶擴展。
DOM Manipulation
一個簡單的方法是使用@angular/core 中的 ElementRef。 這不是正確的方法。
根據 ElementRef 上的官方 Angular 文檔:
當需要直接訪問 DOM 時,將此 API 用作最后的手段。 改用 Angular 提供的模板和數據綁定。 或者,您可以查看 Renderer2,它提供了即使在不支持直接訪問本機元素時也可以安全使用的 API。
不推薦的做法:
// ElementRef this.element.nativeElement.style.color = 'yellow';推薦的做法:
// Renderer2 this.renderer.setStyle(this.element.nativeElement, 'color', 'yellow');Service
給 Service 的方法設置訪問控制權限時,考慮以下準則:
- 如果預期可通過公共 api 訪問,則應使用公共方法。
- 如果預期會被覆蓋或擴展,則應使用受保護的方法。
- 如果預期僅供服務使用,則應使用私有方法。
總結
以上是生活随笔為你收集整理的SAP Spartacus 开发规范的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Matlab学生账号创建激活使用
- 下一篇: 芯片的Systolic Array 脉动