Windows Phone 7 にアプリを展開するために Phonegap/Cordova 2.3.0 を使用しています。アプリケーションは Require.js を使用してすべてのモジュールを動的に読み込みます。1 つのモジュールは「ルーター」と呼ばれ、ローカル ファイルから静的な html をフェッチし、その内容を<div>
. これは iPhone、iPad、および Windows Phone 8 で動作します。しかし、WP7 では奇妙なことが起こっています。
からのサンプルコードrouter.js
:
//path that works with WP8
var path = "www/views/";
$.ajax({ url: path + "test3.html" })
.done(function(html) {
alert(html); //result from Windows Phone 8
}).fail(function(error) {
alert(error); //result from Windows Phone 7
});
WP7 でのテスト時に表示されるエラーは 404 Not Found です。
main.js
上記の正確なコードを(require.js エントリ ポイント) または にコピーでき、エラーなしで実行されるため、「何か奇妙なことが起こっています」と言いindex.html
ます。しかし、そのコードを に入れるとrouter.js
、エラーが返されます。
いくつかの観察:
router.js
は と同じフォルダ (/www/js
) にありmain.js
ます。index.html
フォルダにあり/www
ます。- 私は、機能するものに出くわすことを期待して、考えられるすべてのパスの組み合わせについて試しました。
/app/www/views
、app/www/views
、/www/views
、www/views
、/views
、views
さらにx-wmapp0:/app/www/views
はx-wmapp1:/app/www/views
。 - 明らかに、私は非常に単純化された例を提供しました。さらに必要な場合は、教えてください。