2013-08-27 6 views
7

ブートストラップ3のドキュメント()によると、ブートストラップ3のjsコンポーネントはjQueryに依存しています。Angluar.js&Bootstrap - jQuery依存関係

プラグインの依存関係

いくつかのプラグインやCSSコンポーネントは、他のプラグインに依存します。プラグインを個別にインクルードする場合は、これらの依存関係をドキュメントで確認してください。また、すべてのプラグインがjQueryに依存していることに注意してください(これは、プラグインファイルの前にjQueryが含まれている必要があることを意味します)。

誰もが「drop jQuery!」と言うAngular.jsを使用しています。 AngularチームがBootstrap v2.3.2(http://angular-ui.github.io/bootstrap/)でスワイプしたようです。ブートストラップ3に類似したものや回避策がありますか? JQueryを当面の間使用しなければなりませんか?

おかげ

+1

を限り、あなたはあなたがTwitterのブートストラップ3は、約出てきたことを考えると、jQueryの –

+1

と一緒に暮らす必要があるように見える...ブートストラップjavascriptのプラグインを使用したいと2週間から大幅にコードが変更されました。x、私はあなたがしばらく待っていると思います。あなたのための最も簡単な方法は、Bootstrap 2.xを今のところ固執し、3.xを完全に無視することです。 –

+0

AngularJSアプリケーションからjQueryを削除/削除する場合は、まだ[jqlite](http://docs.angularjs.org/api/angular.element)を探していなければなりません。できる限り最善の方法で、必要なものがすべてあなたのために存在することを確認してください。 – jnthnjns

答えて

3

いくつかのこと:

あなたは角度でおもちゃのアプリケーションを行っていない、まだ、私は強くそうすることをお勧めします。どのくらいの学習/移植が必要か、それがあなたのニーズをどれくらい満たしているかという良いアイデアが得られます。

(私はこの時点では完全に同意しているとは思わないが、ここに私の2セントがある):drop jQueryのことは、DOMの操作をディレクティブ内に置く限り、jQueryウィジェット(あなたが自分のディレクティブを書くのに十分な時には)、jQueryはあなたのモデルを表現する方法だけに分離されるからです。その後、Angularコミュニティがプラグインと拡張機能に関してjQueryに追いつくと、jQuery依存のディレクティブを使用しないようにリファクタリングを開始することができます。そして、依存関係を完全に削除することができます。

また、世界はBootstrap 2とAngularプラグインでしばらくの間生き延びてきました。あなたは3で必要なものがありますか?私はあなたが今これを知っていると確信しています - 新しい方が常に良いとは限りません。壊れていないものを修正してはいけません。

+0

私は、動作するソリューションとしてBootstrap 2に同意します。 Web開発では、技術は速く動いているようです。私は、Bootstrap 3が今後数ヶ月で2を追い越すことを期待しています。私はプロジェクトが始まったばかりなので、将来的には可能な限りベストにすることが賢明だと考えました。 –

3

jQueryを削除し、命令主義的な考え方を落とすことについては、それほど重要ではありません。 「角型ウェイ」は、まずコンポーネント(ディレクティブ、サービスなど)を定義し、次ににアプリケーションの中でを宣言的に結合します。

jQueryの特別なことが必要な場合は、それをディレクティブにラップして宣言的に使用できます。

ので、代わりの:

$('.elements-of-interest').addSparklyThing(); 

あなたはおそらく属性として、キラキラなものディレクティブを作成します。私は不可欠な方法で一連の命令を与えている最初のケースで

<div sparkly-thing>foo</div> 

を。 2番目のケースでは、私は単にがこの divも輝かしいことを宣言しています。フラーとより教条ビューについては

、以下を参照してください "Thinking in AngularJS" if I have a jQuery background?