【发布时间】:2023-04-10 09:25:02
【问题描述】:
我有多个表格,这些表格是根据来自我网站中不同 API 的数据填充的。对于所有表格,我想创建一个过滤器组件,其中包含相应的表格列名称和相应的过滤条件(开关、复选框、下拉菜单、文本框、日期范围、输入范围),然后单击应用。
输入特定参数后,我需要根据所选参数过滤表格。
我有 5 个表,其中包含不同的列数据(产品、客户、风险、错误、信号)。如何为所有表制作通用过滤器组件?代码逻辑在哪里写?
如何传递不同的列数据以及如何形成控件?示例:产品表过滤器需要产品名称文本框和产品活动开关以显示在过滤器组件内部。客户表过滤器需要客户区域下拉列表和客户年龄数字文本框才能显示在过滤器组件中。因此,不同的表需要不同类型的过滤器。在这种情况下如何构建一个可重用的组件?
【问题讨论】:
-
这太宽泛了。我的建议:为一张桌子制作一个特定的过滤器组件。然后为第二个制作另一个特定的过滤器组件。然后甚至可能是第三张桌子的一张。然后查看这 2/3 组件之间的共同点,以及给定表的特定内容。看看将它重构为通用的东西是否有用。查看需要将什么作为输入传递给通用组件,以便它适用于每种特定情况。根据您的描述,您可能不应该尝试制作通用组件。
-
@JBNizet 感谢您的回复。根据您的评论,我不应该使用可重用的组件。是的,我也有同样的想法。如果我选择特定的组件架构,那么过滤器组件代码在哪里写呢?我不想用这个打扰表格代码。
-
我不明白你在问什么。您需要在 TypeScript 文件中编写代码,就像任何其他组件一样。
-
我的意思是,我有 x 组件有表和 y 组件也有表组件。所以,我需要为每个组件的文件夹创建 filtercomponent.ts 文件.. :)
-
是的。所以......做它,就像你做任何其他组件一样。有什么问题?
标签: angular