【问题标题】:Confusion regarding the relationship between a bootstrap theme and a framework like Angular 2?对引导主题和像 Angular 2 这样的框架之间的关系感到困惑?
【发布时间】:2026-01-26 18:45:01
【问题描述】:

我正在使用 Angular2 构建一个应用程序,并希望使用 Bootstrap 作为我的 css 框架。我不是 UI 专家,因此希望购买/使用 Bootstrap 主题。

根据我的理解,如果我使用引导主题,应该提供一些 .css 文件,一旦包含在我的 html 中,我将能够使用标准引导类或主题中的自定义类为了实现该主题的外观。

但是,当我查看各种主题时,不仅仅是 css,通常还有多个不同的 .js 文件以及该主题中包含的其他 3rd 方组件的许多其他库。

此外,我遇到了基于 Angular 2(这是我的应用程序框架)的“本机”组件构建的引导主题,但我很难理解 Angular 2 与引导主题相关的内容或方式。如果 Bootstrap 3 用于样式化,那么它和任何 Bootstrap 主题都不应该与 Angular 2 / React / 等任何框架无关?

任何帮助或资源澄清这些点将不胜感激。

【问题讨论】:

  • Bootstrap 不只是样式,它的组件(例如 DatePicker 或 Modal)需要结合 CSS 和 JS 才能工作。如果您只想要 CSS 部分,只需下载他们的 CSS 文件(或将您的链接指向其中一个 CDN)并开始设置您的代码。我相信自定义主题也需要支持 Bootstrap 组件,这就是那里有 JS 文件的原因。
  • @HarryNinh - 这确实有助于澄清我对引导程序的误解。谢谢。是否有一些参考资料可以让我准确确定引导程序的哪些部分仅是 css 以及哪些部分需要 js?

标签: javascript css angular twitter-bootstrap-3 themes


【解决方案1】:

Bootstrap 使用 jQuery,很明显 jQuery 和 Angular 是在 JavaScript 之上编写的两个不同框架。所以在我个人看来,我认为我们不应该在一个项目项目中混用两个不同的框架(使用 jQuery 或使用 Angular)。

但是在您使用 Angular 的情况下,您可以将 Bootstrap 的 CSS 仅用于布局和样式设置,而不是使用在 jQuery 上编写的 Bootstrap 的默认组件(如模式、下拉列表等),有一些可用的 Bootstrap 组件可重新- 使用 Angular 编写,不依赖 jQuery。你可以查看ng-bootstrapngx-bootstrap,它们几乎所有的 Bootstrap 组件都是完全用 Angular 编写的。

另外,还有另一个完整的 Angular UI 框架,它基于 Google 的 Material Design 规范,名为 Angular Material。目前 Angular 2 的 Angular Material 处于测试阶段。

还有官方 UI resources 捆绑包,您可以通过 Angular 顺利使用和驱动。

【讨论】:

  • 您能否在答案中提供引用的参考 URL 以供我参考?顺便说一句,我本身完全同意。另外,我是否正确理解,通过使用类似 ng-bootstrap 的东西,我基本上删除了 jquery 依赖项 - 但无论如何我仍然可以在 Bootstrap 中使用所有与 CSS 相关的好东西?
  • 实际上这是我个人的意见和周围一些开发人员的意见,但没有这样的硬性规则可以同时使用。一旦我找到一个好的参考网址,我会尽快更新您的参考网址。是的,您可以通过添加 Bootstrap CSS 来使用所有与 CSS 相关的 Bootstrap 好东西。对于组件,如果你愿意只依赖 Angular 而没有 jQuery,你可以使用上面提到的 UI 组件。
  • 请注意:jQuery 是一个库,而不是一个框架 :)