编辑 我正在使用为柱形图提供的Sencha触摸图示例。代码如下
new Ext.chart.Panel({
fullscreen: true,
title: 'Column Chart',
dockedItems: [{
xtype: 'button',
iconCls: 'help',
iconMask: true,
ui: 'plain',
handler: onHelpTap
}, {
xtype: 'button',
iconCls: 'shuffle',
iconMask: true,
ui: 'plain',
handler: onRefreshTap
}],
items: {
cls: 'column1',
animate: {
easing: 'bounceOut',
duration: 750
},
store: window.store1,
shadow: false,
gradients: [{
'id': 'v-1',
'angle': 0,
stops: {
0: {
color: 'rgb(212, 40, 40)'
},
100: {
color: 'rgb(117, 14, 14)'
}
}
},
{
'id': 'v-2',
'angle': 0,
stops: {
0: {
color: 'rgb(180, 216, 42)'
},
100: {
color: 'rgb(94, 114, 13)'
}
}
},
{
'id': 'v-3',
'angle': 0,
stops: {
0: {
color: 'rgb(43, 221, 115)'
},
100: {
color: 'rgb(14, 117, 56)'
}
}
},
{
'id': 'v-4',
'angle': 0,
stops: {
0: {
color: 'rgb(45, 117, 226)'
},
100: {
color: 'rgb(14, 56, 117)'
}
}
},
{
'id': 'v-5',
'angle': 0,
stops: {
0: {
color: 'rgb(187, 45, 222)'
},
100: {
color: 'rgb(85, 10, 103)'
}
}
}],
axes: [{
type: 'Numeric',
position: 'left',
fields: ['wins'],
minimum: 0,
maximum: 10,
label: {
renderer: function (v) {
return v.toFixed(0);
}
},
title: 'Wins'
},
{
type: 'Category',
position: 'bottom',
fields: ['School'],
title: 'School'
}],
series: [{
type: 'column',
axis: 'left',
highlight: true,
renderer: function (sprite, storeItem, barAttr, i, store) {
barAttr.fill = colors[i % colors.length];
return barAttr;
},
label: {
field: 'wins'
},
xField: 'School',
yField: 'wins'
}],
interactions: [{
type: 'panzoom',
axes: ['bottom']
}]
}
});
}
编辑: 当我在调试器中检查此数据时,现在可以加载json数据,但我的图表仍未显示。这是我更新的代码
Ext.regModel('Details', { fields: [{ name: 'School' }, { name: 'wins'}] });
// create the Data Store
window.store1 = new Ext.data.Store({
model: 'Details',
proxy: {
type: 'scripttag',
url: 'http://localhost:2650/AjaxWCFService.svc/GetDataset',
reader: {
root: 'data',
type: 'json'
}
},
autoLoad: true
});
如果有人做错了事,请让我知道。
旧帖子: 我正在使用json输出绑定到我的Sencha柱形图。我的代码如下-
Ext.regModel('details', { idProperty: 'name', fields: ['School', 'wins'] });
// create the Data Store
window.store1 = new Ext.data.Store({
model: 'details',
autoLoad: true,
proxy: {
type: 'ajax',
method: 'POST',
url: 'http://localhost:2650/AjaxWCFService.svc/GetDataset',
reader: {
type: 'json',
root: 'data'
}
},
listeners: {
load: function (obj, records) {
Ext.each(records, function (rec) {
console.log(rec.get('name'));
});
}
}
});
这是从网址返回的json数据
{
data: [
{School:'Dukes',wins:'3'},
{School:'Emmaus',wins:'10'},
{School:'Maryland',wins:'5'},
{School:'Virginia',wins:'2'}
]
}
但这不会显示图形,而是在sencha-touch.js文件中出现了javascript错误“未捕获的类型错误:无法读取未定义的属性长度”。
如果我直接从json输出中对数据进行硬编码,那么它将起作用
window.store1 = new Ext.data.JsonStore({
root: 'data',
fields: ['School', 'wins'],
autoLoad: true,
data: [
{School:'Dukes',wins:'3'},
{School:'Emmaus',wins:'10'},
{School:'Maryland',wins:'5'},
{School:'Virginia',wins:'2'}
]
});
另外,当我从ExtDesigner加载jsonStore时,它工作正常。当我在Secha图表index.js文件中复制相同的代码时,它不起作用。
有人可以让我知道我在代码中做错了什么吗?
我在Sencha同事的帮助下解决了这个问题。谢谢丹。解决方法如下:
构造json数据如下
{
"data": [
{
"School": "Dukes",
"wins": "3"
},
{
"School": "Emmaus",
"wins": "10"
},
{
"School": "Maryland",
"wins": "5"
},
{
"School": "Virginia",
"wins": "2"
}
]
}
使用以下数据存储
window.store1 = new Ext.data.Store({
model: 'Details',
proxy: {
type: 'ajax',
url: 'GetDataset.json',
reader: {
root: 'data',
type: 'json'
}
},
autoLoad: true
});
当我在react中工作时。当我想要侧边页时,我会显示“TypeError:不能读取未定义的属性(读取'pathname')”!
问题内容: 我是Reactjs的新手。我正在尝试做一个非常简单的事情:当用户在文本区域内更改文本时,在render函数中更新div。有什么建议? 问题答案: 您应该绑定该函数。您收到此错误的原因是,在handleChange函数中,键盘操作未引用React类的上下文,因此您需要绑定该函数。 看到这个答案
我搜索了这个网站,发现了类似的问题,但没有解决我的问题。当我滚动到一个div时,我试图使它固定在屏幕顶部。但我一直在犯错误: "(index): 59未捕获类型错误:无法读取未定义的属性'top'at(index): 59" 我还在学习jQuery,不能解决这个问题。
我基本上是React的初学者。我有一个仪表板页面,其中显示了一个React表。我有一个自定义按钮,它将打开一个弹出页面,这个弹出页面有一些复选框允许我显示/隐藏那些反应列。最初,此弹出页面中的所有复选框都设置为true。当我取消选中某列时,该列将被禁用。 这是我的父组件-父页面是带有ReactTable的页面,现在有10列,而不是像图中所示的8列。 这是我的子组件--在我的子页面(显示复选框的页面
我正在选择area_enninFantry的所有子div,并循环调整某些子div的文本。cardArray是一个全局常量,myId在父函数中定义。 未捕获的TypeError:无法读取未定义的属性(读取“getAttribute”) 我在这篇文章中读到,这可能是因为字段/元素的内容可能是DOM元素,我应该用$()包装它们,所以我确实这样做了——将两个变量都更改为$(元素)[a]. attr(“标题