官网

某些违反准则的行为可以通过一个名为 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 开发规范相关推荐

  1. SAP ETL开发规范

    1  介绍 SAP Business Objects数据服务是一种提取,转换和加载(ETL)工具,用于在源环境和目标环境之间移动和操作数据. SAP数据服务提供了一个数据管理平台,可支持各种举措,包括 ...

  2. SAP ABAP开发规范

    目录 前言: 1.公共标识符 1.1 SAP功能模块/应用 1.2 常用对象类型 2.命名规范

  3. 一个使用 SAP Spartacus 开发的电商网站 - Lego 乐高

    网址:https://lego.yellowblocks.me/en-ae 没有使用服务器端渲染:因为 app-root 节点内是空的 看下乐高 CMS 都有哪些 Component: 22 个 co ...

  4. 手动为 SAP Spartacus 添加 SSR 支持的步骤

    ng add @spartacus/schematics --ssr 在用 SAP Spartacus 开发的 store 里,能看到 devDependencies 里具有 @spartacus/s ...

  5. 我9月底的SAP Spartacus开发进展情况

    8月底我加入SAP Spartacus开发团队时,开发经理把我介绍给团队其他成员时说道,一般新人加入团队后,我们期望他/她三个月之内productive,但你是Jerry,一个月就够了.如今差不多一个 ...

  6. SAP Spartacus的开发人员来自全球各地

    SAP Spartacus的开发人员来自全球各地.下图的三位大佬,Tobias,Mateusz和Louis,分别来自荷兰,波兰和加拿大,在Open SAP上都有他们的个人介绍:

  7. 使用组件化开发思路替换 SAP Spartacus 的 Logo

    简单来说,组件是应用程序的任何部分,可以在逻辑上分组并被视为单一元素,理想情况下可以作为应用程序其余部分的构建块重用.这个组件中可能有其他组件,也可能在其他组件中使用,但每个单独的"组件&q ...

  8. 如何在移动设备上以开发模式访问SAP Spartacus

    命令行 ipconfig/all, 查到本地笔记本电脑ip地址为192.168.3.3: 本地运行ng serve --host 192.168.3.3: 暂时禁用掉SAP电脑的防火墙软件McAfee ...

  9. SAP Spartacus 服务器端渲染编程规范

    链接:https://sap.github.io/spartacus-docs/server-side-rendering-coding-guidelines 禁止使用只有在浏览器环境下才可用的全局对 ...

最新文章

  1. Tomcat V6 Examples移植到Apusic V5.1
  2. 【组合数学】组合数学简介 ( 组合数学脉络 | 组合数学技巧 | 组合思想 1 : 一一对应 )
  3. 【Python】青少年蓝桥杯_每日一题_9.19_三行英文字母
  4. CALayer 一些简单的小例子
  5. linux 拆分文件 多个,linux – 如何拆分文件并保留每个部分的第...
  6. 边沿检测—以脉冲形式给出信号
  7. 清北·NOIP2017济南考前冲刺班 DAY1 morning
  8. 微软即将发布的.NET 5,蕴藏哪些最新特性?
  9. AngularJs的UI组件ui-Bootstrap分享(七)——Buttons和Dropdown
  10. 软件众包,哪个数据库好
  11. php 刷新腾讯云cdn
  12. 代码:小波包分解与重构、小波包能量特征提取
  13. 最简单求100以内质数算法
  14. 不同IP网段连接网络打印机
  15. 整合腾讯云地图的绘制和编辑几何图形
  16. 2020.8.5丨细菌基因组二代测序组装流程梳理
  17. 2019-11-29-win10-UWP-Controls-by-function
  18. 清明节全网灰色主题实现原理
  19. 车牌识别(九)模板比较
  20. 永恒之蓝漏洞复现(ms17-010)

热门文章

  1. 性价比泛滥后,网易严选情怀路线还能否继续吃香?
  2. 鼠标形状 - - -放大镜 五指小手
  3. Linux Load Balancing之NAT与DR模型
  4. app端微信支付(二) - 生成预付单
  5. 【转】搭建Java版WebService
  6. PendingFileRenameOperations键值!
  7. java编程思想 学习笔记(2)
  8. nginx做透明代理
  9. golang panic的错误回收和简单的使用场景
  10. AS3 --调用Js