2

Dijit(Dojo Toolkit)を使用してサンドボックス化されたページにHTMLレイアウトを生成していますが、dijitファイルを呼び出すたびに。が表示されますUncaught unload is not available in packaged apps.

これがDojoの問題なのか、新しいセキュリティポリシーによるChromeの制限なのかはわかりません。

私のファイル:

/** manifest.json **/
{
  "name": "Hello App",
  "version": "2.0",
  "manifest_version": 2,
  "description": "A app that says hello",
  "app": {
    "background": {
      "scripts" : ["js/app.js"]
    }
  },
  "permissions": [

  ],
  "sandbox": {
    "pages" : ["live.html"]
  }
}

/** js/app.js **/
chrome.app.runtime.onLaunched.addListener(function(){
  chrome.app.window.create('live.html', {width:screen.width,
    height: screen.height});
});

/** js/helloapp/app.js **/
/** This is the file that actually calls Dijit to build the layout **/
define(function(){
  require(["dijit/layout/ContentPane",
    "dijit/layout/BorderContainer"]);
});

live.htmlは、基本的にHTML構造、dojoローダーの呼び出し、およびhelloapp/app.jsファイルの要求であるため、省略しました。

これがCSPの世界での制限である場合、新しいChromeアプリでDijitを使用する別の方法はありますか、それとも何かが足りませんか?

御時間ありがとうございます

4

1 に答える 1

0

unload イベントを削除するか再定義するには、Dojo Core、Dojo Base、および Dijit のすべてのコア ソース コードを変更する必要があります。

close()unload()非常に似ており、ここで実装されていない理由についてのスレッドを見ることができます。

http://code.google.com/p/chromium/issues/detail?id=147674

http://code.google.com/p/chromium/issues/detail?id=130465

于 2012-12-02T09:56:56.560 に答える