今天是个好日子。我想为handsontable制作自定义单元格类型,以便可以将其称为:
//custom renderer
Handsontable.AttestationRenderer = function (instance, TD, row, col, prop, value, cellProperties) {
if (Handsontable.helper.isNumeric(value)) {
if (typeof cellProperties.language !== 'undefined') {
numeral.language(cellProperties.language)
}
value = numeral(value).format(cellProperties.format || '0'); //docs: http://numeraljs.com/
instance.view.wt.wtDom.addClass(TD, 'htNumeric');
}
td.addClass('attestationCell');
Handsontable.TextRenderer(instance, TD, row, col, prop, value, cellProperties);
};
//custom cell
Handsontable.AttestationCell = {
editor: Handsontable.TextEditor,
renderer: Handsontable.NumericRenderer2,
validator: Handsontable.NumericValidator,
dataType: 'number'
};
//here setup the friendly aliases that are used by cellProperties.type
Handsontable.cellTypes = {
text: Handsontable.TextCell,
date: Handsontable.DateCell,
numeric: Handsontable.NumericCell,
attestation: Handsontable.AttestationCell,
checkbox: Handsontable.CheckboxCell,
autocomplete: Handsontable.AutocompleteCell,
handsontable: Handsontable.HandsontableCell
};
var hotcontainer = $('#example');
hotcontainer.handsontable({
columns: [
{data : "id", type : "numeric"}
,{data : "att", type : "attestation"}
]
,data : [{id:1, att : 10},{id:10, att:100}]
});
基本上它会扩展为数字类型,并为单元格和属性添加额外的类。但此刻我收到错误:“TypeError:方法不是函数”