我正在用角度6中的handontable。
我尝试使用代码添加自定义验证,该代码已在我的angular 6组件的官方文档中显示,但是没有用。
我搜索了多个站点,但没有找到任何单个示例来说明如何为handsOntable在角度2+版本中添加自定义验证
谁能让我知道如何在angular 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