3

(そして、なぜ jQuery チームはまともなドキュメントを書くことができない、または書きたがらないと思いますか?;)

たとえば、http://jqueryui.com/download/all/にアクセスして、次のいずれかをダウンロードします。

  1. jQuery UI 1.10.3 (ソース、デモ、テーマ、テスト)
  2. jQuery UI 1.10.3 テーマ

#1

  • ファイルがありMANIFESTます。
  • ファイルはありREADME.mdますが、アーカイブのレイアウトの説明はありません。
  • JSON 拡張子を持つファイルがいくつかありますui.accordion.jquery.json。これらには、特定の UI ウィジェットに関する情報が含まれています。これらが何に使われているのかわかりません。
  • という名前のファイルpackage.json。JSON形式のライブラリ情報のようです。これが何のためにあるか知っていますか?他のファイルにリンクされていると思われ.jsonますが、誰が知っていますか?
  • externaljavascript を保持するという名前のディレクトリがあります。これが何のためにあるか知っていますか?
  • ファイルがありjquery-1.9.1.jsます。縮小版はありません。
  • のライセンスMIT-LICENSE.txt
  • 寄稿者の名前を含むAUTHORS.txtファイルで、アーカイブ全体で数回繰り返されます。ただし、アーカイブにあるものを完全にリストすることができた人は一人もいません;)
  • Web サイトのすべてのデモのdemosように見えるディレクトリ。
  • Gruntfile.jsREADME に記載されているAは、jQuery のビルドに使用されます。jQueryの「構築」が意味するものは何でも。
  • testsディレクトリ。
  • uiすべての jQuery UI エフェクト JavaScript を保持しているように見えるという名前のディレクトリがあり、これもサブディレクトリに縮小されています。またi18n、国際化が必要なウィジェット用のサブディレクトリもあります。
  • という名前のディレクトリがありthemesます。baseその中には、基本テーマのスタイルシートを保持するというサブディレクトリがあります。このサブimagesディレクトリには、基本テーマのディレクトリも含まれています。また、いくつかのエフェクトのスタイルシートも保持していますjquery.ui.accordion.cssこれらは基本テーマでのみ機能しますか、それともどのテーマにも適用できますか? そうでない場合、なぜベースだけにそれらがあるのですか? (下記参照)minifiedすべてのスタイルシートの縮小版を含むサブディレクトリもあります。

#2

  • アーカイブにはMANIFESTファイルが含まれています
  • しかしREADMEはありません。
  • AUTHORS ファイル。
  • package.jsonプロジェクトに関する少量の情報を含むファイル。
  • いくつかのテーマがありますが、ありませんbase
  • ルート ディレクトリにも各テーマのディレクトリにもエフェクト/ウィジェット ファイルはありません。
  • 各テーマ ディレクトリには、imagesそのテーマに関連付けられた画像ファイルを含むサブディレクトリ、jquery-ui.cssスタイルシート、これの縮小版、およびjquery.ui.theme.css. jquery-ui.css各テーマ ディレクトリ内の は、ディレクトリごとに異なります。これらの各ファイルの目的を知っていますか? jquery.ui.theme.css特定の変更がすべてファイルに反映されていないのはなぜですか?

なぜこれを知る必要があるのですか?

これはコメントに出てくるかもしれないので、ここで答えます。Ruby Rack プロジェクト、Rack JQueryUIおよびRack JQueryUI Themesに正しいバージョン/テーマをデプロイするのに役立つライブラリをいくつか作成しました。jQuery UI のバージョンが変更されるたびに、これらの文書化されていないアーカイブに対処する必要があり、バージョン間でレイアウトやコンテンツも変更されているようです。jQueryチームと話したとき、良いフィードバックはありませんでした-彼らはドキュメントで嘆かわしく、それは明らかに彼らにとって優先事項ではありません.関数などの名前を変更したいと思っています.私はここにいて、これはそれを保管するのに適した場所になります (いわば、彼らの手の届かないところに)。

テーマディレクトリに関する質問に最も興味があります。これは今すぐ直接役立つからですが、質問の範囲を拡大しました。他の人にも役立つと信じており、興味があるからです。

4

2 に答える 2

7

jQuery UI ダウンロードとは何かを説明するところから始めましょう。これらは、開発ファイルと運用ファイルの完全なバンドルです。jQuery UI は 1 日に 11,000 回以上ダウンロードされることに注意してください (これはダウンロード ビルダーの使用量にすぎません)。これらのダウンロードの使用方法は、ユーザーによって大きく異なります。これらのダウンロードのコンテンツは、最大数のユーザーにサービスを提供することを目的としています。開発バンドルはソース リポジトリのほぼ正確なコピーであることに注意することが重要です。

ソース、デモ、テーマ、テスト

  • MANIFEST: これは、zip 内の他のすべてのファイルのリストとチェックサムを含むファイルです。マニフェストを気にするユーザーはほとんどいませんが、気にする人にとっては重要な情報を提供します。
  • README.md: (あなたがリストしたことに注意してくださいREADME.txt): これは jquery-ui git リポジトリの README です。これは、GitHub でプロジェクトを表示した場合に表示されるものの正確なコピーです。
  • *.json: これらは、jQuery Plugin Registryのプラグイン マニフェスト ファイルです。これらのファイルは、マスター ブランチ (または他のブランチ) に保存されることはありませんが、常にタグに含まれています。これらは有用な情報を提供するため、ダウンロードに含まれています。マニフェスト ファイルの構造について詳しく読むことができます。
  • package.json: package.json は、 npm / nodeで使用する標準ファイルです。すべての jQuery プロジェクトは、ノードに依存してリンティング、テスト、ビルド、リリースなどを行います。これは、jQuery プラグイン レジストリ用の他の JSON ファイルとは完全に分離されています。プラグインのマニフェスト ファイルは npm に基づいて設計されているため、構造は非常に似ています。
  • external: このディレクトリには、デモやテストで使用されるサード パーティのスクリプトが含まれています。
  • jquery-1.9.1.js: これは、jQuery UI がテストされた jQuery の最新の安定バージョンです。縮小されたバージョンの jQuery を jQuery UI リポジトリに含めることは決してありません。
  • MIT-LICENSE.txt: ダウンロードしたファイルを使用できる条件を定義するライセンス。
  • AUTHORS.txt: jquery-ui リポジトリへの貢献者のリスト。これには、さまざまなサイトやドキュメントでの作業など、jQuery UI プロジェクトの他の部分への貢献者は含まれません。
  • demos: 選択したコンポーネント (この場合はすべてのコンポーネント) のデモのディレクトリ。デモは実際には jquery-ui リポジトリに由来し、リリース中に jqueryui.com にコピーされます。
  • Gruntfile.js:リンティング、テスト、およびビルドにはGruntを使用します。Grunt はノード用の JavaScript タスク ランナーです。jQuery UI を構築するということは、縮小と連結を意味します。
  • tests: 選択したコンポーネント (この場合はすべてのコンポーネント) のテストのディレクトリ。
  • ui: ソース ファイルのコピー。@VERSION はリリースのバージョン番号に置き換えられます。このjquery-ui.jsファイルは、ビルド中にすべてのソース ファイルを連結して生成されます。ディレクトリは、minifiedビルド中に個々のファイルを縮小することによって生成されます。そしてjquery-ui.min.jsもちろん、ソースファイルの連結と縮小の両方によって生成されます。
  • themes: ソース ファイルのコピー。@VERSION はリリースのバージョン番号に置き換えられます。uiこれは、連結と縮小に関してディレクトリと同じプロセスを経ます。個々のコンポーネント ファイルはテーマに依存しません。したがってjquery.ui.accordion.css、どのテーマでも機能します。これらは、JS ファイルで使用するために必要な CSS ファイルです。任意のテーマを作成できますが、コンポーネントに機能的な CSS を使用しない場合、動作が保証されるものはありません。完全なテーマ (ほぼすべてのユーザーが実際に使用するもの) には、すべての機能 CSS とテーマ CSS が 1 つのファイルに含まれています。

テーマ

テーマはThemeRollerによって生成されます。それらはどのリポジトリにも存在しないため、どのリポジトリのアーティファクトも含まれていません。これが README がない理由です。

  • MANIFEST: 上記と同様に、マニフェストにはダウンロード ファイルのチェックサムが含まれています。
  • AUTHORS.txtAUTHORS.txt: jquery-ui からのコピー。これは、ソース ダウンロードと正確に一致する必要があります。これはテーマに貢献した人のリストではありませんが、これをコードの一部と見なし、同じ作成者のリストを含めます。
  • package.jsonpackage.json: jquery-ui からのコピー。このファイルは、リポジトリからのものではないため、少し奇妙に見えます。おそらくこれを削除する必要があります。
  • themes: 生成されたテーマのディレクトリ。これらには、ソース変数/トークンは含まれません。基本テーマは生成されたテーマではないため、含まれません。生成されたテーマのディレクトリ構造も異なることに気付くでしょう。各テーマには 3 つのファイルが含まれていますjquery.ui.theme.css。これは、基本テーマで提供される機能的な CSS で使用できるものです。jquery-ui.css完全なテーマです。テーマ CSS と機能 CSS が含まれています。jquery-ui.min.cssの縮小コピーですjquery-ui.css
于 2013-07-09T13:28:46.857 に答える
1

jQuery UI は、上記のような混乱を避けるために、パッケージを (非常に) 単純化することにしました。1.11以降は https://github.com/jquery/download.jqueryui.com/pull/214を配布しています。新しい質問については、お知らせください。

于 2014-12-03T11:31:24.933 に答える