0

ウィジェットにデフォルトの画像を表示したい。ウィジェットフォルダ構造内にある画像を指すための最良の解決策は何ですか?

require.toUrl( "widgets.notes"、 "images / defaultAvatar.png")、

出力は次のとおりです。

htpp://www.example.com/widgets/main.notes 404(見つかりません)

4

2 に答える 2

0

これをチェックしてください

アバター: require.toUrl("widgets/MyFirstWidget/widget/images/edwin.jpg")

角かっこ内は、widgets という単語で始まり、次にスラッシュ、その後にリソースへの完全な URL が続きます。上記の例を例にとると、MyFirstWidget はウィジェットの名前で、画像は画像ファイルを保存するためにウィジェット内に作成したフォルダーです。

于 2015-09-07T11:37:32.303 に答える
0

への呼び出しrequire.toUrlは誤りです。2 番目のパラメータはありません。

「ウィジェット」へのモジュールパスが設定されている場合は、代わりに次のようにします。

    require.toUrl("widgets/notes/images/defaultAvatar.png")

パッケージの名前空間 (「widget」など) だけを送信すると、 CommonJS Package specを利用しようとします。標準の最小要件は次のとおりです。

  • main - require(name) が呼び出されたときにロードする必要があるモジュール。定義は、パッケージ記述ファイルに対して相対的でなければなりません。

それがrequire.toUrl("widgets")解釈です。

ただし、パッケージの「ルート」を探す場所を選択することもできます。したがって、次の場合:

/
  dojo/
  dijit/
  dojox/
  widgets/

次に、対話なしで最初から設定されます。「widgets」はグローバル名前空間の pr 定義です。「インプレース」でない場合、ここでdojo.registerModulePath(pr 1.7 として非推奨) が役立ちます。リファレンス ガイドを参照してください。

別のパスに設定している場合 (xdomain は非常に複雑になりますが、絶対パスが受け入れられます)、ここで 2 つのオプションのいずれかを実行します。

まず、パッケージのレイアウト例:

/ (webroot)
/dojo/
   dojo-release-x.y/
     dojo/
     dijit/
     dojox/
/widgets/

オプション 1 は dojoConfig で、window.dojoConfigdojo.js スクリプト タグをロードする前に設定されます。

var dojoConfig = {
  packages: [
    {
      name: "widgets",
      location: "/widgets"  // note, 'http://mydomain.tld/widget' would work
    }
  ]
};

オプション 2 は、次のrequireように への追加の最初のパラメーターです。

require({
  packages: [
    {
      name: "widgets",
      location: "/widgets"
    }
  ]
}, ["widgets/notes"], function(Notes) {
 ...
});
于 2012-06-16T14:59:30.787 に答える