Ext好难学啊,手册也不大方便看~~只好提问了。
首先,我在app/model文件下建了Bugs.js
Ext.define('TutorialApp.model.Bugs', {
extend: 'TutorialApp.model.Base', fields: [
{name:'id', type:'int'},
{name:'importanceZh', type:'string'},
{name:'versionNumber', type:'string'},
{name:'title', type:'string'},
{name:'statusZh', type:'string'},
{name:'creatorNickName', type:'string'},
{name:'gmtCreated', type:'string'},
{name:'handlerNickName', type:'string'}
]
});然后在app/store文件下建了Bugs.js
Ext.define('TutorialApp.store.Bugs', {
extend: 'Ext.data.Store',
alias: 'store.bugs',
model: 'TutorialApp.model.Bugs',
autoLoad:true,
pageSize: 30,
proxy: {
type:"jsonp",
url : "http://localhost:8081/api/testing/page_bugs",
reader:{
type:"json",
rootProperty:"data.data",
totalProperty: 'data.totalRows',
messageProperty: "msg"
}
}
});
由于我的请求跨域了,所以type要用jsonp,声明,我对jsonp不了解,只是在网上查到跨域请求得写jsonp而不是ajax。然后在classic/src/view/main文件下建了BugList.js:
Ext.define('TutorialApp.view.main.BugList', {
extend: 'Ext.grid.Panel',
xtype: 'buglist', requires: [
'TutorialApp.store.Bugs'
], title: '缺陷列表', store: {
type: 'bugs'
}, columns: [
{ text: 'ID', dataIndex: 'id' },
{ text: '重要度', dataIndex: 'importanceZh', flex: 1 },
{ text: '版本', dataIndex: 'versionNumber', flex: 1 },
{ text: '标题', dataIndex: 'title', flex: 1 },
{ text: '状态', dataIndex: 'statusZh', flex: 1 },
{ text: '创建人', dataIndex: 'creatorNickName', flex: 1 },
{ text: '创建日期', dataIndex: 'gmtCreated', flex: 1 },
{ text: '处理人', dataIndex: 'handlerNickName', flex: 1 }
], listeners: {
// select: 'onItemSelected'
}
});
现在问题来了。我发现请求里ext自己补了一串分页参数以及一个回调:
http://localhost:8081/api/testing/page_bugs?_dc=1501641196586&page=1&start=0&limit=25&callback=Ext.data.JsonP.callback1
这回调需要我做什么吗?
数据返回了,但是也报错了:
Uncaught SyntaxError: Unexpected token :
我该怎么才能正确解析数据?还有,如果我想传的参数是rowsPerPage=10¤tPage=1而不是page=1&start=0&limit=25该怎么做?
首先,我在app/model文件下建了Bugs.js
Ext.define('TutorialApp.model.Bugs', {
extend: 'TutorialApp.model.Base', fields: [
{name:'id', type:'int'},
{name:'importanceZh', type:'string'},
{name:'versionNumber', type:'string'},
{name:'title', type:'string'},
{name:'statusZh', type:'string'},
{name:'creatorNickName', type:'string'},
{name:'gmtCreated', type:'string'},
{name:'handlerNickName', type:'string'}
]
});然后在app/store文件下建了Bugs.js
Ext.define('TutorialApp.store.Bugs', {
extend: 'Ext.data.Store',
alias: 'store.bugs',
model: 'TutorialApp.model.Bugs',
autoLoad:true,
pageSize: 30,
proxy: {
type:"jsonp",
url : "http://localhost:8081/api/testing/page_bugs",
reader:{
type:"json",
rootProperty:"data.data",
totalProperty: 'data.totalRows',
messageProperty: "msg"
}
}
});
由于我的请求跨域了,所以type要用jsonp,声明,我对jsonp不了解,只是在网上查到跨域请求得写jsonp而不是ajax。然后在classic/src/view/main文件下建了BugList.js:
Ext.define('TutorialApp.view.main.BugList', {
extend: 'Ext.grid.Panel',
xtype: 'buglist', requires: [
'TutorialApp.store.Bugs'
], title: '缺陷列表', store: {
type: 'bugs'
}, columns: [
{ text: 'ID', dataIndex: 'id' },
{ text: '重要度', dataIndex: 'importanceZh', flex: 1 },
{ text: '版本', dataIndex: 'versionNumber', flex: 1 },
{ text: '标题', dataIndex: 'title', flex: 1 },
{ text: '状态', dataIndex: 'statusZh', flex: 1 },
{ text: '创建人', dataIndex: 'creatorNickName', flex: 1 },
{ text: '创建日期', dataIndex: 'gmtCreated', flex: 1 },
{ text: '处理人', dataIndex: 'handlerNickName', flex: 1 }
], listeners: {
// select: 'onItemSelected'
}
});
现在问题来了。我发现请求里ext自己补了一串分页参数以及一个回调:
http://localhost:8081/api/testing/page_bugs?_dc=1501641196586&page=1&start=0&limit=25&callback=Ext.data.JsonP.callback1
这回调需要我做什么吗?
数据返回了,但是也报错了:
Uncaught SyntaxError: Unexpected token :
我该怎么才能正确解析数据?还有,如果我想传的参数是rowsPerPage=10¤tPage=1而不是page=1&start=0&limit=25该怎么做?
解决方案 »
- FLASH图片切换效果-如何实现动态链接数据库的代码
- 关于用JS控制onmouseover和 onmouseOut 的样式问题
- 求助!!为什么我写的jquery插件,不能使用内部的方法?
- 谁能给我叫叫javascript中类的概念和用法?
- 找出在线电影真实地址
- 超难问题,大家都来看看了,高手都来啊;从JAVASCRIPT动态添加的东东中写入数据库的问题!!!!!!!!!!
- 关于播放器问题麻烦有经验的人来指教我一下---小弟在这里谢谢了~
- 怎样将一个table的最后n行删除?
- javascipt里处理一个事件要延迟5秒怎么写?
- JavaScript上style.left的问题
- js单独提到一个文件里,窗口加载完后自动调用,可以调。但是绑定在单机事件上无法调用
- 作为值的函数
jsonp跨域原理