CDNモジュールからネストされた依存関係を定義しようとしています。
次のエラーが発生します:config
行:1765エラー:./ modules / MyConcreteWidget / templates.htm HTTPステータス:404
CDN "text!./ pathing"は、ローカルWebアプリケーションにあると考えているようです。参照されるすべてのファイルは実際にCDNに存在し、ブラウザのアドレスバーから表示できます。
「MyWidget」への呼び出しをrequire(それ自体)でラップする必要がありますか?
ローカル要求の構成は次のように見えます:
require.config({
paths:
{
, jquery: '/scripts/jQuery/jquery-1.8.3.min'
, jsRender: '/scripts/jQuery/jsrender-1.0pre'
, text: '/scripts/RequireJS/2.1.4/text-2.0.5'
, domReady: '/scripts/RequireJS/2.1.4/domReady-2.0.1'
, 'myConcreteWidget': '/Modules/MyConcreteWidget/control'
, 'myWidet': 'http://server1/Modules/MyWidget/control'
},
shim:
{
'jsRender': { deps: ['jquery'] }
}
});
ローカル要件は次のように見えます:
require(['myConcreteWidget', 'domReady'],
function (myConcreteWidget, domReady) {
domReady(function () {
// Use the concrete widget here...
});
});
LOCAL DEFINE LOOKS LIKE:myConcreteWidget
この定義は、依存関係としてCDN「ウィジェット」を使用します。
define(
[
'myWidget'
],
function (myWidget) {
var concrete = new myWidget.MyWidget();
// Configure the concrete here...
// Return concrete widget here
return concrete;
});
CDN DEFINE LOOKS LIKE:myWidget
define(
[
'jquery'
, 'jsRender'
, 'text!./templates.htm'
],
function ($, jsRender, templates) {
$('body').append(templates);
function MyWidget(){
this.widgetId = 0;
this.name = 'Something Awesome';
};
return { MyWidget: MyWidget};
});
更新:
テンプレートファイルは、(テンプレート用の)SCRIPTタグに他なりません。