angular 4 httpClient 数据访问

服务里:是用来请求api的一个模块。

使用httpClient服务请求数据常用方法如下:http.get(url).subscribe(...)

export class ApiService {

    // 登录  一种是url是不变的。只需传参。
    login(userName, password) {
        const url = '../../../../assets/data/login.json';
        return this.http
            .get(url, {userName: userName, password: password})
            .pipe(catchError(this.handleError));
    }


    // 获取表头数据   在调用这个函数时,url在变化。
    getHeaders(url, args?: any) {
        return this.http
            .get(url)
            .pipe(catchError(this.handleError));
    }
// 获取表格数据  所有需要传递的参数都在get传递
    getTableData(url, params= {}, current = 1, count = 5, args?: any) {
        return this.http
            .get(url, { params: params, count: count, page: current})
            .pipe(catchError(this.handleError));
    }

}

需要调用服务的模块里
    url_headers = '../../../../assets/data/headers.json';
    url = '../../../../assets/data/technical-management/site-management';
    header = 'site-management';

    params= [];

   getTable () {
    // 获取表头数据
    this.api.getHeaders(this.url_headers).subscribe((data: any) => {
            // console.log( 'headers',data);
            this.headers = data[this.header];
        });
// 获取表格数据
        this.api.getTableData(this.url).subscribe((data: any) => {
            console.log('table data',data,);
            this.data = data['data'];
        });
    }
   search(data) {
        console.log('search', data);
        this.api.getTableData(this.url, this.params).subscribe((dat: any) => {
            this.data = dat['data'];
        });

        this.chartToggle1();
        this.chartToggle2();
    }

猜你喜欢

转载自blog.csdn.net/qq_38643776/article/details/80959622