Javascript 如何使用自定义模板在Angular formly中设置modelValue
我已经创建了自定义模板,以添加角格式的待办事项列表 我正在尝试添加所需的验证,但它不起作用。我已经添加了验证器来检查。但viewValue、modelValue在输入字段中包含值。是否有任何方法可以使用实际模型在验证器中设置modelValueJavascript 如何使用自定义模板在Angular formly中设置modelValue,javascript,angularjs,validation,angular-formly,Javascript,Angularjs,Validation,Angular Formly,我已经创建了自定义模板,以添加角格式的待办事项列表 我正在尝试添加所需的验证,但它不起作用。我已经添加了验证器来检查。但viewValue、modelValue在输入字段中包含值。是否有任何方法可以使用实际模型在验证器中设置modelValue return [ { className: 'col-sm-12 col-md-12 col-lg-12', key: 'todoList', type: 'todolist', template
return [
{
className: 'col-sm-12 col-md-12 col-lg-12',
key: 'todoList',
type: 'todolist',
templateOptions: {
type: 'text',
label: 'Add todo list',
placeholder: 'Enter todo list'
},
validators: {
tagLength: {
expression: function(viewValue, modelValue) {
var value = modelValue || viewValue;
console.log(modelValue)
console.log(viewValue)
//return value.length > 0;
},
message: '"Altest 1 Operation is required"'
}
}
}
我正试图实现的是,如果todolist为空,则应该禁用submit按钮
提前谢谢。这完全没有必要。您只需在submit按钮中设置ng show。不需要验证器。刚刚在您的jsbin链接上测试了它,它可以按预期工作。请将此标记为正确答案
ng-show="vm.model.todoList.length > 0" OR
ng-show="vm.model.todoList" (since it will be false if empty/undefined)
验证器用于验证该字段上的输入,而不是其他字段/按钮。这完全没有必要。您只需在submit按钮中设置ng show。不需要验证器。刚刚在您的jsbin链接上测试了它,它可以按预期工作。请将此标记为正确答案
ng-show="vm.model.todoList.length > 0" OR
ng-show="vm.model.todoList" (since it will be false if empty/undefined)
验证程序将验证该字段上的输入,而不是其他字段/按钮。谢谢您的回答。当他们的形式只有1到10时,上述变通方法可以很好地工作。但当我有todolist的“repeat section”(repeat section是angular formly模板,它从现有的form feild section中添加了新的form feild section)时,它就不起作用了。你可以简单地得到todolist索引的长度,然后检查每个索引。如果其中任何一个中有一个值,则将标志设置为true,否则,标志将保持为false,并仅使用ng show检查标志值。还是一样的概念。谢谢你的回答。当他们的形式只有1到10时,上述变通方法可以很好地工作。但当我有todolist的“repeat section”(repeat section是angular formly模板,它从现有的form feild section中添加了新的form feild section)时,它就不起作用了。你可以简单地得到todolist索引的长度,然后检查每个索引。如果其中任何一个中有一个值,则将标志设置为true,否则,标志将保持为false,并仅使用ng show检查标志值。这仍然是同一个概念。