使用 Extjs 7.0 中的 Calendar 组件,我们注意到如果语言设置为荷兰语,标题单元格不会与其列正确对齐:
检查源代码时,我发现在单元格 html 中添加了这些值;在 Ext.calendar.header.Base 中,在 setHeaderText 函数中存在以下代码:
var me = this,
D = Ext.Date,
value = me.getValue(),
format = me.getFormat(),
domFormat = me.domFormat,
cells = me.cells,
len = cells.length,
useDates = me.useDates,
cell, i;
if (!value) {
return;
}
value = D.clone(value);
for (i = 0; i < len; ++i) {
cell = cells[i];
if (useDates) {
cell.setAttribute('data-date', D.format(value, domFormat));
}
cell.setAttribute('data-day', value.getDay());
cell.innerHTML = D.format(value, format);
value = D.add(value, D.DAY, 1);
}
innerHtml 是通过格式化 Date(D) 对象来设置的,这会产生当天的 3 个字符。如果您将其更改为仅设置一个 4 字符值,例如 cell.innerHTML = 'Test',则标题排列得很好:
但由于某种原因,这在使用 D.format 值时不起作用。如果有人知道是什么原因造成的,我很想听听。
由于某种原因,我的包无法再加载,我似乎无法测试这是否在另一种语言中也会出错。