Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

Im my Angular application, I need set options of multicheckbox field from a function inside my app (component or service). I don′t know how works templateOptions.options, how should I write the value ?

This is my json code :

          {
            "key": "clientIds",
            "type": "multicheckbox",
            "className": "flex-1",
            "templateOptions": {
              "label": "Clients",
              "required": true
            },
            "expressionProperties": {
              "templateOptions.options": "??????" // <-- here to bind with a component or shared service method
            }
          }

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
3.9k views
Welcome To Ask or Share your Answers For Others

1 Answer

You have a few options, but the easiest is to simply set options to an observable.

// Client Service
import { Injectable } from '@angular/core';
import { Observable, of } from 'rxjs';

@Injectable()
export class ClientService {
    clients = [
        { id: '1', name: 'Michael' },
        { id: '2', name: 'GammaStream' },
    ];

    getClients(): Observable<any[]> {
        return of(this.clients);
    }
}

// component

fields: FormlyFieldConfig[] = [
  {
    key: 'clientIds',
    type: 'multicheckbox',
    className: 'flex-1',
    templateOptions: {
      label: 'Clients',
      required: true,
      options: this.clientService.getClients()
    }
  }
];

constructor(private clientService: ClientService) {}

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...