0

Extjs 5.0.1 (から 5.0.0 )にアップグレードし、 Sencha Cmd5.0.1.231にアップグレードしています

コンパイル時のエラーはありませんが、実行時にアプリケーションがロードされず、次のエラーが発生します

Uncaught TypeError: Cannot read property 'baseUrl' of undefined

他の何人かのユーザーが同じ問題を抱えています..

http://www.sencha.com/forum/showthread.php?289872-After-update-to-5.0.1&p=1059537

これはバグですか、それとも何か違うことをしていますか?

ありがとう

4

1 に答える 1

3

バグのように見えますが、Sencha は単に app.js ファイルと css ファイルを含めるのではなく、マイクロローダーを使用する方向に進んでいると思います。だから私の短い答えは両方です!:)

今長いもの:

私は、Webroot から遠く離れた場所にあると同時に、開発モードと運用モード (環境) の両方で利用できるようにする ExtJS アプリケーションのセットアップで遊んでいました。

Sencha CMD アプリのapp.jsonを設定して、microloader.jsが必要な js ファイルと css ファイルをロードするようにするのは、少し難しいことがわかりました。

私のフォルダー設定は以下の通りです: (私のビルドフォルダーはSencha CMDアプリケーションフォルダーの外側にあります - MyApp - パスの深さを同じにするためです)

index.cfm
/far/away/from/web/root
    ....
    /build
        /resources
        app.js
        app.json
        microloader.js
        ...
    /MyApp
        /.sencha
        /ext
        app.json
        app.js
        bootstrap.js
        ....

MyApp/app.json

{
    /**
     * The application's namespace.
     */
    "name": "MyApp",

    /**
     * The relative path to the appliaction's markup file (html, jsp, asp, etc.)
     *
     * Below setting seems relevant for proper loading MyApp/bootstrap.js
     */
    "indexHtmlPath": "../../../../../index.cfm",

    ......

    "output": {
        "base": "${workspace.build.dir}",
        "page": {
            /**
             * Below is relative path from the build folder to the application markup file
             */
            "path": "../../../../../index.cfm",
            "enable": false
        },
        "microloader": {
            "path": "microloader.js",
            "embed": false,
            "enable": true
        },
        "manifest": {
            "path": "app.json",
            "embed": false,
            "enable": "${app.output.microloader.enable}"
        }
    },

    /**
     * Uniquely generated id for this application, used as prefix for localStorage keys.
     * Normally you should never change this value.
     */
    "id": "f6cd3e2b-6a0c-4359-a452-e07adda808ae"
}

最初は、本番ビルドを使用するために、/far/away/from/web/root/build/app.jsファイルを直接ロードしていましたが、同じエラーがスローされました。

Uncaught TypeError: Cannot read property 'baseUrl' of undefined 

app.jsonを上記のように構成したら、index.cfmでロードするかどうかを選択できます。

for production - /far/away/from/web/root/build/microloader.js
for development - /far/away/from/web/root/MyApp/bootstrap.js

これが誰かに役立つことを願っています。

乾杯、ペンチョ

于 2014-08-16T23:03:15.957 に答える