Подключите источник данных к API, используя таблицу данных angular-material.

У меня есть компонент в angular, который обеспечивает функцию поиска. Когда пользователь вводит значение, он вызывает код службы, который возвращает вызов POST API и извлекает результат на основе запроса. Я хочу показать этот результат в таблице, используя библиотеку angular-material. Как я могу подключить источник данных к моему сервисному коду, чтобы он обновлял табличный компонент, когда данные поступают из сервисного кода. Вот мой код компонента

import { Component, OnInit } from '@angular/core';
import { DataService } from '../data.service';
import {NgForm} from '@angular/forms';
import {CollectionViewer, DataSource} from "@angular/cdk/collections";

@Component({
  selector: 'app-searchcomponent',
  templateUrl: './searchcomponent.component.html',
  styleUrls: ['./searchcomponent.component.css']
})
export class SearchcomponentComponent implements OnInit{

  constructor(private dataservice:DataService) { }

  ngOnInit() {
  }



datasource ; datafromservice ; 

displayedColumns = ['StudentName', 'StudentBatch', 'StudentEnrollment','StudentStatus','StudentStatusUpdate']; 


searchfunctionality(f:NgForm){


    console.log("Form Value",f.value);
this.datasource = new datafromservice(f.value);


    this.dataservice.searchstudent(f.value.enrollment_no).subscribe(
    data=>{
            this.datafromservice = data.data;
            console.log("Data",this.datafromservice);

           }

);
};

}

В различных блогах авторы предлагают использовать методы connect() и disconnect(), но я видел только примеры с запросом GET. Мне нужно передать параметры в сервисный код


person mohammad obaid    schedule 15.08.2018    source источник


Ответы (1)


Как только вы получите данные в компоненте в блоке подписки, просто вызовите datasource.update(newData), чтобы обновить таблицу.

person Manoj    schedule 16.08.2018