JavaScriptコードのテストにjasmineを使用しています。
javascriptコードは、requireJsを使用してロードされるモジュールで構成されています。json requirejs-plugins を
使用してjsonファイルをロードすると、Webブラウザーに出力が表示されません。
奇妙なことに、JavaScriptエラーが発生しません。text! plugin
これが私のコードです(1)。
何か案は?
PS:
わかりませんが、おそらく問題は時間の待ち時間に関するものです。
ローカル()からファイルを取得すると、機能しますtime latency = 6ms
。
リモートサーバー()からファイル(ローカルの同じコンテンツを含む)を取得するとtime latency = 170 ms
、空のページが表示されます。
どうすればこの問題を解決できますか?
(1)
/*global define, window*/
(function () {
'use strict';
var specUrl = './';
define([
'jasmine',
'jasmineHtml',
'jasmineJquery',
'json!json_data', // if I comment this line is ok,
// otherwise I get empty page with no error
specUrl + 'models/user.spec'
], function (jasmine) {
var initialize = function () {
// some code
};
return {
initialize: initialize
};
});
}());
非同期仕様に関するドキュメントを読みましたが、どうすれば問題を修正できるかはまだわかりません。何か案は?
私は非常に単純なコードを投稿しました:(1)動作する、(2)動作しない、おそらくサーバーからjson_dataを取得するには約250ミリ秒かかるためです。
(1)
define([
'appJasmine',
// 'json!json_data',
], function (app) {
app.initialize(); // it display data on browser
});
(2)
define([
'appJasmine',
'json!json_data',
], function (app) {
app.initialize(); // it does not display data on browser
});