yui datatable不会显示'dot.notation'键的值(尽管似乎有一个奇怪的技巧可以有效)。解决此问题的最佳方法是什么?我想要一个"正确"的答案,而不是我当前的答案,我在嵌套对象并保留嵌套对象(必须存在于当前工作)。
)。示例数据(第3个数据是因为怪异的重复技巧而起作用)
var table = new Y.DataTable({
columns: ['key', 'dot.notation'],
data: [{
// broken
key: 'value',
'dot.notation': 5
}, {
// broken
key: 'value',
dot: {
notation: 5
}
}, {
// displays
key: 'value',
'dot.notation': 5,
dot: {
notation: 5
}
}]
});
http://jsfiddle.net/dirkraft/erk2d/
使用dataschema是处理此问题的正确方法。我相信点虚线的密钥版本用于工作,但版本3.5的更改停止了此工作
YUI().use('datatable', 'datasource','datasource-jsonschema', function (Y) {
var ds = new Y.DataSource.Local({
source: [{
// broken
key: 'value',
'dot.notation': 5
}, {
// broken
key: 'value',
dot: {
notation: 5
}
}, {
// displays
key: 'value',
'dot.notation': 5,
dot: {
notation: 5
}
}]
});
ds.plug({fn: Y.Plugin.DataSourceJSONSchema, cfg: {
schema: {
resultFields: [
"key",
{
key:'foo',
locator:'dot.notation'
}
]
}
}});
var table = new Y.DataTable({
columns: ['key', 'foo'],
caption: 'Better Now'
});
table.plug(Y.Plugin.DataTableDataSource, {
datasource: ds
});
table.render('#lolol');
table.datasource.load();
});
http://jsfiddle.net/erk2d/3/