7

コマンドを使用して sencha touch 2 アプリをビルドしている間:- sencha app build production

しかし、それはエラーをスローします:

[INFO] Deploying your application to /Applications/MAMP/htdocs/iPadapp/build/production
[INFO] Copied sdk/sencha-touch.js
[INFO] Copied app.js
[INFO] Copied resources/css/app.css
[INFO] Copied resources/images
[INFO] Copied resources/icons
[INFO] Copied resources/loading
[INFO] Resolving your application dependencies...
[ERROR] Error thown from your application with message: TypeError: 'undefined' is not an object

コードでエラーを追跡しました。わかりました、それは私のリストを読み込んでいるためです。これが私のコードです

Ext.define("myProject.store.Members",{
    extend  :'Ext.data.Store',
    requires:"Ext.data.proxy.LocalStorage",
    config: {
        model   :"myProject.model.Member",
        sorters :'lastName',
        autoload:true,

        proxy: {
            type: 'localstorage',
            id  : 'mainStore'
        } 
    }
});

'autoLoad: true' (アプリケーションを壊す行を削除すると、アプリケーションをビルドできます。しかし、リストがロードされていません。元に戻すと、エラーが繰り返されます。ロード関数を使用してリストを動的にロードしようとしましたが、意味がありません。

そして、これが私が面白い model.js ファイルです。

Ext.define('myProject.model.Member', {
    extend: 'Ext.data.Model',
    config: {
        fields: [
            'index',                 
            'email',
            'firstname',
            'lastname',
            'phone',
            'currentemployer',
            'currenttitle',
            'interestlevel',
            'tcgroupNames',
            'active',
            'lastlogin',
            'usertypedesc',
            'recruiternotes',
            'recruitercontact',
            'addtype',
            'usertypedesc',
            'jobtitle',
            'ipAddress',
            'recruitersource',
            'agentkeywords',
            { name: "created", type: 'date' },
            'recruiterprofileurl_linkedin',
            'recruiterprofileurl_facebook'
        ]
    }
});

どんな助けでも大歓迎です

すべての幸せなコーディング

4

2 に答える 2

4

コマンドビルダーはローカルストレージへの接続を開くことが許可されていないため、クラッシュします。

Ext.getStore('Members').setAutoLoad(true);ので設定できるはず launch: function () {ですapp.js

その後、アプリがビルドされ、データがストアに読み込まれます。

于 2012-04-26T06:24:06.800 に答える
0

エラーのトレースは、Firebug を使用するよりも Chrome 開発者ツールを使用する方が優れていることに注意してください。これは、Firebug のコンソールでは例外が表示されないのに対し、Chrome 開発者ツールのコンソールではキャッチされていない例外が表示されるためです。

Ext.getStore("Notes").load();

私の場合、ストア「メモ」は存在しません。

于 2012-05-22T09:12:40.847 に答える