Knockoutjs の実装に労力を費やすべきか、それとも jQuery Data Link を検討すべきか [終了]
-
25-09-2019 - |
質問
最近、Steve Sanderson のノックアウト JS ライブラリを使用しています。 http://knockoutjs.com/ 私のクライアント側のWeb開発では。私はつい最近、Microsoft がデータ リンク プラグインのコードを jQuery に提供していることを知りました。このプラグインは、私がノックアウトについて気に入っているものと重複しているようです。
http://weblogs.asp.net/scottgu/archive/2010/10/04/jquery-templates-data-link-and-globalization-accepted-as-official-jquery-plugins.aspx
https://github.com/jquery/jquery-datalink
http://api.jquery.com/category/plugins/data-link/
ノックアウト コードを廃止して、採用され拡張された jQuery を使用する必要がありますか?
解決
私は個人的にはノックアウトを使い続けたいと思っています - それはすでに 非常にうまく機能することが実証されました, 、現在開発中であるため、機能を比較するときにデータリンクがチャートから外れます。要するに、「ノックアウト」はゴールデンタイムに向けて準備ができているように見えるが、データリンクは未完成に感じられるのだ。
(ノックアウトのストレス テストでは、ドロップダウンを 5,000 項目の配列にデータバインドすると同時に、配列内の一意の項目の数を計算し、それを別のデータ バインドされた要素に追加しました。私の計算とブラウザー クロムの再描画には、データのバインドと更新よりもはるかに時間がかかりました)。
そうは言っても、私はデータリンクに注目し、おそらくそれを試し続けるつもりです。それが軌道に乗れば、それは非常に実行可能な代替手段になるでしょう。(Microsoft と Jquery の協力から生まれたもう 1 つの主要な部分である jquery-tmpl の成功を考慮すると。)
より良いもの ノックアウトを比較するには ドキュメントクラウドのものになります backbone
. 。来週バックボーンを検討しているので、今のところ良い推奨事項はありませんが、 とても 感心した アンダースコア (彼らの別のプロジェクト) なので、代替案として検討することをぜひお勧めします。
4年後のスコア
疑問に思っている人のために
Knockout は、あらゆる種類のプロジェクトの実稼働環境で長年使用されており、現在バージョン 3 であり、その周りに健全なエコシステムがあります。jQuery.datalink になりました JSView, 、まだベータ版です。
他のヒント
私はノックアウトにいくつかの深刻な掘削を行ってきた、と私はそれが信頼性が高く、拡張可能な見つけることです。あなたが考え方に得れば、私はそれは私がブラウザで見た中で最高の開発者の経験だと思います。
jQueryのデータのみをリンクしていることをしてください通知はフォーム要素に取り組んでいます。このように非常に便利です属性、CSS、などバインディング他の多くの種類、上Knockoutjs仕事ます。
koがフォームにモデルのpubsubに便利です。ウィジェットを使用するためには、カスタムバインディングを作成する必要があります。 koが直接AJAXをサポートしていません。
バックボーンは、RESTfulなJSONを介したモデルの永続性のために有用です。それは弱いのモデル/ビューの同期をサポートしていますJSテンプレートを経由してモデル - >ビューを。ウィジェット・ハンドラを経由して表示 - >モデル1つの必須コードます。
KO&バックボーンは直接検証をサポートしていません。 (1は、各属性を検証するためのコードを記述する必要がありますので、私はBBのmodel.validateを()はカウントされません。)これらは、データ型の概念がありません。 。それはですが、型情報は、グリッドCOLSとフォームフィールドに入力する必要があります;(ExtJSのモデルはタイプと検証を持っている残念ながら、私は(データバインディンググリッドに統合ではなく、フォームまたはプロパティシートさExtJSには信頼できないと矛盾することがわかってきましたモデル)上に既に存在する。)
1つのミックスKO、バックボーン、およびjqueryの検証は、多くのコードを書くのはそこだ場合でもます。
それはこのすべてを処理しますので、私が見つけた最も生産性の高いUIフレームワークはJSF2です。残念ながら、実際には問題があります。