我正在设置一个主要的前端项目,使用Angular CLI进行开发。这个前端项目将依赖于使用Php Laravel框架开发的大量Rest API。这些API是90%相同的类型,具有列表、创建、修改、删除(...)实体。
通过使用像PrimeNG这样的组件库,我真的希望为我的组件开发和整个项目的实现节省一些时间。也就是说,我是一个新的Angular开发人员,我不确定我是否了解所有的良好实践,即使在查看了大量文档并开始原型之后也是如此。
我的目标不是每个Rest API都有一个angular组件。例如,所有返回列表的TurboTable都应该可以通过单个PrimeNg通用API组件进行访问,对吗?这个组件当然可以根据使用的上下文和当前实例进行配置。例如,我可以使用此genericComponent的多个实例来显示订单列表、产品列表和(...)列表。
而不是为每个实体创建一个组件,一个用于产品列表,一个用于订单列表(...)。
你觉得呢?请问您有什么建议或澄清可以帮助我吗?
热烈的问候,塞巴斯蒂安
发布于 2019-05-21 18:54:23
根据我的经验,我想分享一些观点。这是我的个人经验。
创建可重用组件确实是一个很好的实践。这是强烈推荐的,您应该始终尝试创建可重用的组件。这肯定会帮助你重用代码并移除重复的代码。
表格本身是一个非常复杂的东西,当它将有多个功能,如分页,排序,过滤,行选择,行扩展等。现在假设你在3-4个地方使用一个单一的表格组件。所有的都有不同的标题,服务器端过滤器,排序,还有一些没有任何功能。
因此,在此场景中,根据表Ex: product table or order table
的类型,您必须在组件初始化时动态处理标头、服务器端筛选器和所有上述内容。最后,您将结束使用if else
或switch
案例来获取表配置和Headers值。在模板中,您将使用*ngIf
根据表类型在表中显示正确的值。
此外,您还必须处理事件、、@Output
和@Input
。所以它现在变得越来越复杂。
简而言之,如果重用组件变得非常复杂,那么我会说你可以选择单独的组件。因为代码维护和调试也是一个挑战。
如果您可以制作单个组件并处理所有需要的场景,那将是最好的。
https://stackoverflow.com/questions/56241626
复制