「ng-bootstrap」と「ngx-bootstrap」の違いは何ですか?


231

「ng-bootstrap」と「ngx-bootstrap」の違いは何ですか?それらは互いに関連していますか?それとも、それらは単に並行実装ですか?

誰かが彼らと一緒に働いて、両方の長所と短所を与えたり説明したりできますか?

「ng-bootstrap」とは、https://ng-bootstrap.github.io/#/homeおよび

「ngx-bootstrap」とは、http: //valor-software.com/ngx-bootstrap/を意味します。

Angular 4(AngularJSではない!)とBootstrap 4の両方に関連しています。

これngx-bootstrapとng2 bootstrapの違いの重複した質問ではないことに注意してください


17
ngx-bootstrapsuppprts bootstrap 3&4 ng-bootstrap(AngularJsのui-bootstrap)はブートストラップ4のみをサポートします
developer033

1
@snorkpeteの回答はを正解に設定するに値すると思います。彼は回答を見つけてそれを書くのに時間をかけました。戻ってきて、stackoverflowに配置した質問の回答を読んでから確認するのは良い文化です。問題に満足したら、それを正解として選択してください
hossein bakhtiari

回答:


213

ng-bootstrapとngx-bootstrapは、ほぼ同じことを達成しようとしている2つの異なるプロジェクトチームによる2つの異なるプロジェクトです。jQueryを使用せずにAngular(2+)でBootstrapを使用できます。

どちらも、Angular(jQueryではなく)のみを使用してBootstrapコンポーネントを再構築しています。主な違いは、サポートするBootstrapのバージョンにあります。

  • ngx-bootstrapはBootstrap 3および4をサポートしています。
  • ng-bootstrapはBootstrap 4をサポートし、Angular 5+が必要です。

これは、Bootstrapバージョン3を使用する必要がある場合、ngx-bootstrapが2つの唯一の実際のオプションであることを意味します。Bootstrap 4を使用できる場合は、2つのプロジェクトを選択できます。

他の(潜在的に重要な)違いは、プロジェクトの背後にあるチームです。この点に関して注意すべき重要な点は、ng-bootstrapの背後にあるチームがAngularJS(つまり1.x)バージョンのBootstrapライブラリであるangular-ui-bootstrapも担当していたことです。


3
それは、2人のチームリードにとっての質問です。私はそれはそれとは何かを持っていると思うだろうが、それは私の一部にだけ推測ですので、中に見て外側から、彼らは、わずかに異なる目標を持っている
snorkpete

角度プロジェクトに両方のライブラリーを含めると問題になりますか?もしそうなら、どのような問題が予想されますか?
RITZ XAVI

おそらく可能ですが、やり過ぎのようです。それほど気にせず、Bootstrap 4を使用している場合は、(必要に応じてランダムに)1つだけ選択してください。
snorkpete

38

私は自分のプロジェクトに何を使用するかを考えていましたが、両方のプロジェクトを比較した後、モーダルコンポーネントにアニメーションが組み込まれているため、valor-softwareによるngx-bootstrapがより良いオプションだと思います。ng-bootstrapアニメーションはまだ存在しません。アニメーションなしでポップアップするモーダルは大きな厄介です。他の理由は、Ng-bootstrapがまだベータ版であり、すでにリリース候補バージョンがリリースされているngx-bootstrap(12.22.2017)と比較すると、本番アプリケーションでそれを使用できなかったことです。しかし、私は両方のプロジェクトの幸運を祈っており、うまくいけばしっかりとした解決策を思い付くでしょう。


3
Ng-bootstrap 1.0.0が利用可能になり、AOTコンパイラーは問題なくビルドされます。github.com/ng-bootstrap/ng-bootstrap/blob/master/CHANGELOG.mdを
Stevethemacguy

16

@Dilshanに同意する。また、新製品にngx-bootstrapを選択することも決定しました。いくつかの調査の結果、ngxはより成熟しており、本番環境で安定していることがわかりました。ng-bootstrapは開発中です。

参照用の優れたリソースであるCoreUI.ioには、完全に機能するCoreUI + Angular 5.x + ngx-bootstrapサンプルプロジェクトがあります。私は実際にこのプロジェクトからngxを学びました。ライブプレビューを閲覧したり、プロジェクトパッケージをダウンロードしたりできます。


8
ngx-bootstrapは何もテストしないので、「成熟」の定義方法に依存します。ng-bootstrapがすべてをテストしているようです。
Ricki Runge

知っておくと、共有してくれてありがとう。ng-bootstrapが正しい方法だと思います。成熟度については、1週間前にリリースされたばかりなので説明しました。(「このライブラリは作成中です...」)
18

4
今日のオープンソースのフロントエンドエコシステムでは、成熟とは「2か月以上前にリリースされた」ことを意味するようです。;)
Eric Soyke、2018年

9

私はngx-bootstrap(Valorによる)とng-bootstrap(ng-boostrapによる)の両方を使用しました。ここに、あなたがそれらから得るユニークな機能の私の2セントがあります:

ngx-bootstrap:

  1. ほぼすべての組み込みアニメーションサポート(モーダル、アコーディオン、コルパーゼ、ドロップダウン、日付ピッカー...)
  2. より優れたモーダルサポート(ネストされたモーダル、サービスとしてのモーダル、テンプレートとしてのモーダル)
  3. ソート可能なコンポーネント(ドラッグ&ドロップ機能付き)

ng-bootstrap:

  1. ナビゲーション機能(タブセットは非推奨になりました)
  2. 組み込みのトーストコンポーネント
  3. パッケージサイズはngx-bootstrapのほぼ半分です(Minified + Gzipped)

npmダウンロード数とnpmtrendsを比較することもできます

[注:私の回答は現在の最新バージョン、つまりngx-bootstrap v5.5.0とng-boostrap v6.0.0に基づいています]


7

1つの違いは、日付ピッカーで使用される形式です。ng-bootstrapはオブジェクトを使用しますが、ngx-bootstrapは文字列を使用するため、より簡単に使用できます。


7

ng-bootstrapはサポートされていないようです-一番のリクエストはappendTo bodyで、メンテナーはプロジェクトに取り組んでいないと言っています。

私はすべてをngx-bootstrapに切り替えてきました


7

質問で言及されているng-bootstrap(https://ng-bootstrap.github.ioにあるもの))は、npmパッケージng-bootstrapではありません。

代わりに、npmパッケージは@ ng-bootstrap / ng-bootstrapです。

別のチームによって開発されています。

$ npmビュー@ ng-bootstrap / ng-bootstrap

@ ng-bootstrap / ng-bootstrap @ 3.2.0 | MIT | deps:1 | バージョン:61 Angular Powered Bootstrap https://github.com/ng-bootstrap/ng-bootstrap#readme

npmパッケージng-bootstrapは、確かに古いバージョンのngx-bootstrapのようです。


4

拡張コメントほどの答えではありません...

チームが独立していることについてはよくわかりません。実行npm view ngx-bootstrapnpm view ng-bootstrapて、両方が同じメールアカウントで公開されたことを示します。

2つのチームは関連していると思います。

npmビューngx -bootstrap

C:\:
17:07:25.16>npm view ngx-bootstrap

ngx-bootstrap@3.0.1 | MIT | deps: none | versions: 40
Native Angular Bootstrap Components
https://github.com/valor-software/ngx-bootstrap#readme

keywords: angular, bootstap, ng, ng2, angular2, twitter-bootstrap

dist
.tarball https://registry.npmjs.org/ngx-bootstrap/-/ngx-    bootstrap-3.0.1.tgz
.shasum: e98d2fc6340f32a9d358cd08e8fda7dcb23bdab3
.integrity: sha512-ni91yYtn8ldgf/pxrlwl9lkVcLURGzopSpJnEbbgG1v1EZWTobI8y7J3mx4Kxptkn0EeiQwnLel67G7XJSox4A==
.unpackedSize: 8.4 MB

maintainers:
- valorkin <valorkin@gmail.com>

dist-tags:
latest: 3.0.1       next: 3.0.1         test: 0.0.0-test.0

published a month ago by valorkin <valorkin@gmail.com>

npm view ng -bootstrap

C:\:
17:16:42.36>npm view ng-bootstrap

ng-bootstrap@1.6.3 | MIT | deps: 1 | versions: 8
Native Angular Bootstrap Components
https://github.com/valor-software/ngx-bootstrap#readme

keywords: ng, ng-bootstap, angular, angular2, bootstrap, twitter-bootstrap

dist
.tarball https://registry.npmjs.org/ng-bootstrap/-/ng-bootstrap-1.6.3.tgz
.shasum: d41fd42154c0593422cb83c473a3828aa7525bf5

dependencies:
moment: 2.18.1

maintainers:
- pkozlowski_os <pkozlowski.opensource@gmail.com>
- ng-bootstrap <foxandxss@gmail.com>

dist-tags:
beta: 1.1.16-3  latest: 1.6.3

published a year ago by valorkin <valorkin@gmail.com>

9
ng-bootstrapngx-bootstrapの古い名前です。ng-bootstrap.github.io、NPMパッケージ名は@ NG-ブートストラップ/ NG-ブートストラップすなわち、npm view @ng-bootstrap/ng-bootstrap
atao

1
その「バローキン」男はng-bootstrap出身で、ngxのために彼自身のチーム「バラーソフトウェア」をオープンしたように聞こえます
Facundo Colombier
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.