作っているアプリにMVCパターンを適用し、MemoryStoreをJsonStoreに変更したら以下のエラーを吐くようになりました。
Uncaught TypeError: Cannot call method 'indexOf' of undefined
Ext.apply.urlAppend
・・・
原因はStoreがAjaxを使ってJSONデータを取りに行くんだけど、そのリクエスト先URLがundefinedになってること。
URLはproxyに設定してあるし、APIもCRUD全部定義してあるのになぜ。。
原因がわからなかったのでJsonStoreを使うのをやめて素のStoreを使うことに。
そしたら今度は以下のエラーが。
Uncaught TypeError: Object #
has no method 'read'
Ext.define.processResponse
・・・
本家のフォーラムUncaught TypeError: Object #<an Object> has no method 'read'によると、このエラーはStoreより前にStoreに紐付くModelをインスタンス化してないことが原因っぽい。
でもapp.jsの中で以下のようにモデルをrequireしてもだめ。。
Ext.application({ name: 'Real', appFolder: 'app', controllers: [ 'Store' ], launch: function () { Ext.require('Real.model.Resource'); } });
うーん困った。