0

感谢您的快速响应。我试图涵盖的场景如下:-

1)会有一个json文件,里面会包含整个formly模板(我提供的代码)。2) 会有一个 javascript 文件从 json 文件中读取模板并分配给 "vm.formFields" 。

我面临的问题是函数(验证)中的所有范围变量,并且模型被视为字符串而不是范围变量。有没有办法我们可以在 json 文件中的 formly 模板中定义模型变量和函数变量,这将绑定到范围。

这个想法是我们想要传递不同的模板(基于某些条件动态地)来渲染不同的元素而不改变角度部分和 javascript 文件

这是代码(就在js文件中):-

vm.formFields = [
                                {
                                    className : "reg-custom-row"
                                },
                                {
                                    className : "add-prod-col-4",
                                    key : 'feild1',
                                    type : 'input',
                                    model : $scope.addFEILDTemplate.FANVO[0],
                                    templateOptions : {
                                        label : 'Feild1',
                                        onKeyup : function($viewValue,
                                                $modelValue, scope) {
                                            $scope.isNumericInput(
                                                    $viewValue, 0);
                                        },
                                        required : true,
                                        placeholder : 'Feild1'
                                    }
                                },
                                {

                                    className : "add-prod-col-8 addmargin",
                                    key : 'feild2',
                                    type : 'input',
                                    model : $scope.addFANTemplate.FANVO[0],
                                    templateOptions : {
                                        label : 'feild2',
                                        required : true,
                                        onKeyup : function($viewValue,
                                                $modelValue, scope) {
                                            $scope.isAlphaNumeric(
                                                    $viewValue, 0);
                                        },
                                        placeholder : 'feild2'
                                    }
                                }

                        ];
4

0 回答 0