どこから始めればいいのか本当にわかりません。
私はすべてのチュートリアル、記事、およびブログ投稿を調べて、dojo が機能するために行っていることを 1 つ試してみましたが、何かを機能させるためにそのような問題が発生したことはありません。ドキュメンテーションをめぐる炎上戦争や、実際に動作するスクリプトを持つ人々を見つけましたが、投稿も概説もありませんでした。SO では、これは非常に一般的な問題であることがわかりましたが、半分の時間は解決されません。
免責事項: 1.6 は忘れてください。1.6は使ったことがありません。したがって、オンラインで見つけた私のリソースの半分は無効であり、私の本も無効です。どうぞ。
質問1
この形式の使用に関する多くの投稿の違いは何ですか:
dependencies = {
stripConsole: "all",
action: "release",
optimize: "shrinksafe",
// Omitted options...
layers: [{
name: "dojo.js",
customBase : true,
dependencies: [
"dojox.gauges.AnalogNeedleIndicator",
"myApp.smartmix"]
}
],
prefixes: [
[ "dijit", "../dijit" ],
[ "dojox", "../dojox" ],
[ "myApp", "../../../myApp" ]
]
};
...vs この形式:
var profile = {
basePath: './',
stripConsole: 'all',
selectorEngine: 'lite',
layers: {
'dojo/dojo': {
include: ['dojo/dojo', 'dojo/domReady', 'dojo/_base/declare'],
boot: true,
customBase: true
},
'dgrid/dgrid': {
include: ["dgrid/List", "dgrid/OnDemandGrid", "dgrid/Selection", "dgrid/Keyboard", "dgrid/test/data/perf"]
}
}
// static-has-features removed
};
この 2 つのオブジェクトには 2 つの非常に重要な違いがあり、layers
A) 誰もが理由や合理性なしに単に「知っている」ように見えるか、または B) 人々は単に「知っている」ように見える. 新しい AMD 構造とビルド システムの書き直しに関係する 2 つの構文 (構文? 構文?) の違いについて書かれたものをまだ見つけていません。
私が見た中で最も近いのは、オブジェクト名も宣言も重要ではないということです。「グローバル」変数 (var
キーワードの省略) であってもなくてもかまいません。返されるオブジェクトに必要な情報が含まれている限り、名前は関係ありません。
2 番目の形式では、「予期しない文字列」エラーが発生し、プロファイルをコピーして貼り付けても、99% の確率で失敗します。
質問2
いったい何が必要なの!? Dojo のドキュメントには、package.json と appName.profile.js ファイルが必要であると書かれていますが、私が見たすべてのチュートリアルでは、プロファイルのみが必要であり、使用されています。したがって、Dojo のメイン Web サイトにある建物に関する情報の半分は使用されていません。そう........?
Dojo サイトではsrc
、ビルドにリリースを使用するように指示されています。Nabble の担当者はsvn
、src バージョンが既に「ビルド」されているため、バージョンを取得する必要があると述べました。
...では、誰が最初に参加しますか?
質問 3
共有したい作業ディレクトリ構造とprofile.js
ファイルを持っている人はいますか? 私はすべてを試しました。そして、ビルドを取得するために、すべてを意味します。1 つの提案は、空のプロファイル オブジェクトを使用することでした。それはうまくいきます、そしてそれは役に立ちません。
もう 1 つの提案は、Dojo ボイラープレート ビルドを使用することでした。変更によってテンプレートが壊れる場合、テンプレートは何の役にも立たないでしょうか? Tony Stark の言葉を借りれば、「すべての既知の [javascript オブジェクトのバリエーション] のすべての順列。何も機能しません」。
私はすぐに信頼を失っています。何時間もの試行錯誤の末に理解できないからではなく、多くの人が同じ船に乗っているからです. 沈んでます。
最終質問
それで、私の最後のリクエストは、誰かがこのビルドシステムがどのように機能するかについていくつかの光を当てることができますか?
どのように... Dojo ビルド プロファイルを構成し、それを実行しますか... エラーなしで!? このシステムが A) 文書化され、B) 実装されており、私がそうしている間に C) 教えられているというのは正気ではありません。疲れます。
私が訪れた(多くの)サイトのいくつか:
- Nabble SVN と SDK の比較
- ... 生成しない SitePen チュートリアル。
- 1 つの「ボイラープレート」プロファイル (SitePen から)
- Dojo ボイラープレートのプロフィール (github)
- 道場のチュートリアル
アップデート
@xesxz と @Craig Swing に感謝します。いくつかの小さなことをした後、チャンクを離れて必要なものを提供するビルドプロファイルを取得しました!