私は本を勉強しています。Ext Jsをマスターしています。グリッドパネルの問題を見つけました。ストアからデータをロードしませんでした。デバッグJsonフォーマットサーバーがよく来ました。コンソールにエラーがないので何が問題になるか。ここでグリッドパネルはext js 6.0.0にレンダリングされません
は私のモデルクラスは、ここで
Ext.define("pg.model.security.User", {
extend: 'Ext.data.Model',
idProperty: 'userName',
fields: [
{
name: 'userName'
}, {
name: 'roleId'
}, {
name: 'fullName'
}, {
name: 'emailId'
}, {
name: 'mobileNumber'
}, {
name: 'landLineNumber'
}, {
name: 'picture'
}
]
});
されているURLからストアクラス
Ext.define('pg.store.security.Users', {
extend: 'Ext.data.Store',
requires: [
'pg.model.security.User' // #1
],
storeId:'userStore',
model: 'pg.model.security.User', // #2
proxy: {
type: 'ajax',
url: 'http://localhost:8080/parkgarau-ws/ws/park/userlist',
reader: {
type: 'json',
root: 'data'
}
}
});
ですが、私は成功したJSON形式に
{ "コード" 取得されます:200、」 「メッセージ」:「成功」、「データ」:「[ユーザー名\」:\ "管理\"、\ "ロールID \:SYS_ADMIN \"、\ "fullName \":\ "Bibek Shakya \ \ "emailId \":\ "[email protected] \"、\ "mobileNumber \":\ "9843598726 \"、\ "landLineNumber \ ":\" 014323565 \ "\ "画像\":\ "index.jpgの\"}]"}
ここでは、私の見解クラスは、これは私のコントローラであるグリッドパネル
Ext.define('pg.view.security.UsersList', {
extend: 'Ext.grid.Panel',
alias: 'widget.userslist',
frame: true,
store: Ext.create('pg.store.security.Users'), // #1
columns: [
{
width: 150,
dataIndex: 'userName',
text: 'Username'
},
{
width: 200,
dataIndex: 'fullName',
flex: 1,
text: 'Name'
}, {
width: 250,
dataIndex: 'emailId',
text: 'Email'
}
]
});
を拡張していますクラス
Ext.define('pg.controller.security.Users', {
extend: 'Ext.app.Controller',
views: [
'security.Users' // #1
],
init: function (application) {
this.control({
"userslist": {// #2
render: this.onRender
}
});
},
onRender: function (component, options) { // #3
this.getStore('userStore').load();
}
});
を働いた明確なJSON形式でそれはので、 '\" 'ではありません。 '[....]'という配列を二重引用符で囲んでいるからです。 – Thevs
@Thevs私は理解していません、それはサーバーのフォーマットです、Response(code、msg、data)、 –
@ B'bekShakya JSON生成用のサーバーサイドコードを表示してください。それには何か問題があります。 – Alexander