首页 > 解决方案 > Angular 12 项目的 UI 框架

问题描述

我们将在 Angular 12 上创建一个新项目。我需要建议来选择 UI 框架。

我们有 bootstrap 5、angular material 和 primeNg 选项。

我做了以下研究:

Bootstrap 5 适合初学者开发人员,并且响应迅速,但对创建任何复杂的组件没有用处。开发人员必须手动完成。

Angular Material 适合主题化,并提供良好的小部件,但没有任何类型的内置图表和响应式支持。

PrimeNg 适用于提供所有类型的小部件图表、复杂网格、选项卡的简单和复杂组件。它有所有的包,响应能力。但是,它不提供任何自定义。

这是我做过的分析。

我们的要求是我们不想创建不必要的复杂组件,以便我们可以专注于支持现成组件的数据,并希望避免使用多个库。我们还需要 i18n 的支持和辅助功能支持。

任何建议或建议将不胜感激。

谢谢

标签: angularangular-materialangular-cliprimengbootstrap-5

解决方案


我已经使用了您提到的所有 3 个库和其他库。我对你的观察的看法。

Bootstrap - 浪费空间,非常老派而且看起来很无聊。它的网格系统使它出名,但 CSS 网格现在意味着它的冗余。

Angular Material - 专业的组件,但定制和过于复杂的标记可能会成为一个真正的痛苦。例如,如果您想在日期选择器模式中添加自定义按钮,那么您需要一个学位和 2 天的时间来添加它们!如果您在规范之外什么都不做,那么它是可以接受的。

primeng - 不错的库,易于集成,但几乎没有可用的自定义。此外,组件可能不一致。例如,一个可能要求您使用 CSS 设置宽度样式,而下一个提供宽度输入属性。此外,版本之间的升级确实会破坏您的应用程序的外观和感觉。

尽管我很讨厌它(我真的很讨厌),并且真的很生气顶级 Angular 库使用起来非常痛苦(真的很痛苦),并且由于缺乏体面的竞争,我会推荐 Angular Material。

但是,如果您想要其他想法,请查看Rising Stars

特别是NG-ZORRO,非常受欢迎。但是,就我个人而言,它遇到了与primeng类似的问题。

总而言之,组件库应该可以满足您的大部分需求。然而,总会有一些额外的东西需要你去实现,而对于这些来说,一个专门针对该特定领域的额外库通常是必须的。

一切顺利。


推荐阅读