热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

如何在角度组件之间共享功能?

如何解决《如何在角度组件之间共享功能?》经验,为你挑选了1个好方法。

我有3种类型的组件来处理表单.他们是:

EntityFormEditComponent //To Edit

EntityFormViewComponent // To Visualize

EntityFormCreateComponent // To Create

他们有一个共同的父母,他们EntityFormComponent共享自己之间的基本逻辑.

当我创建一个新实体时,该实体从基本表单组件扩展,如下所示:

UserFormEditComponent extends from EntityFormEditComponent

UserFormViewComponent extends from EntityFormViewComponent

UserFormCreateComponent extends from EntityFormCreateComponent

这种组织我的项目的方式产生了一个问题:

我如何分享这3个组件之间的常用方法?

我认为该服务将是一种解决方案,但不是可以推荐的,因为它们不用于处理组件逻辑.



1> Vikas..:

我认为该服务是一种解决方案,但不建议使用,因为它们不用于处理组件逻辑.

Angular将组件与服务区分开来,以增加模块化和可重用性. 将复杂的组件逻辑委托给服务是一种很好的做法

角度样式指南
将组件中的逻辑限制为仅视图所需的逻辑.所有其他逻辑应该委托给服务.

将可重用逻辑移动到服务上并使组件保持简单并专注于其预期目的.

为什么?当放置在服务中并通过函数公开时,逻辑可以被多个组件重用.

为什么?服务中的逻辑可以更容易地在单元测试中被隔离,而组件中的调用逻辑可以很容易地被模拟.

为什么?从组件中删除依赖项并隐藏实现详细信息.

为什么?保持组件纤薄,修剪和聚焦.

服务的使用在Angular中还确保您不违反DRYSRP 软件开发原则.对于您的方案,最佳解决方案是使用服务


推荐阅读
author-avatar
朗月清风的海角
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有