如何根据控制器属性为formly-field添加动态类?

时间:2017-04-06 05:07:37

标签: javascript angularjs angular-formly

我需要根据控件属性将条件类添加到表单字段。

表示Ex:我有我的控制器

 $scope.isIssueFixed = true; 

和我的形象对象是 -

$scope.formly = {
className: 'col-xs-6',
key: 'Name',
type: 'input',
templateOptions: {
label: 'Common Device Name'
}

现在我们如何将条件类添加到上面的形式字段, $ scope.isIssueFixed'确定':'无&#39 ;;在形式上的对象?

3 个答案:

答案 0 :(得分:1)

我使用角度形式的Wrappers解决了这个问题。这是我做的代码。可能对某人有帮助。

将bolow代码添加到config:

formlyConfigProvider.setWrapper({
      name: 'horizontalBootstrapLabel',
      template: [
        `<label for="{{::id}}" class="col-sm-2 control-label" >
          '{{to.label}} {{to.required ? "*" : ""}}
        </label>
        <div class="col-sm-8" ng-class="{'bbb':model.heightlight}">
          <formly-transclude></formly-transclude>
        </div>`
      ].join(' ')
});

答案 1 :(得分:0)

您可以使用angularjs的ng-class指令。参考https://docs.angularjs.org/api/ng/directive/ngClass

答案 2 :(得分:0)

 $scope.$watch('isIssueFixed', function() {
        var classAdded = $scope.isIssueFixed ? "ok" , "No";  $scope.formly = {
                 className: 'col-xs-6 ' + classAdded  ,
                 key: 'products.device[0].deviceCommonName',
                 type: 'input',
                 templateOptions: {
                 label: 'Common Device Name'
                }
    });