我正在使用角度为6的handsontable。
我尝试使用代码添加自定义验证,该代码已在我的angular 6组件的官方文档中显示,但没有用。
我搜索了多个站点,但是没有找到一个示例,该示例显示了如何为handOntable添加2个以上版本的自定义验证
任何人都可以让我知道如何在角度2+版本中注册自定义验证
预先感谢:)
答案 0 :(得分:2)
为电子邮件创建了示例自定义验证器,并能够设置为列
emailValidator = (value, callback) => {
console.log(value)
setTimeout(function(){
if (/.+@.+/.test(value)) {
callback(true);
}
else {
callback(false);
}
}, 1000);
};
private columns: any[] = [
{
data: 'name'
},
{
data: 'email',
validator: this.emailValidator,
// Uncomment below line accept invalid input and indicate
// allowInvalid: true
}
];
@ViewChild(HotTableComponent) hotTableComponent;
// Call validator after initialization
afterInit() { this.hotTableComponent.getHandsontableInstance().validateCells(function(valid){});
afterInit是事件发射器
<hot-table [data]="data"
[colHeaders]="colHeaders"
[columns]="columns"
[options]="options"
(hotInstanceCreated)="instanceCreated($event)"
(afterInit)="afterInit(event$)"
[colWidths]="colWidths">
https://stackblitz.com/edit/angular-kjmvq4?file=app%2Fapp.component.ts