grails - 如何在ng2-a-table中使用数据源?

标签 grails angular-cli ngtable groovyshell

ng2-ya-table的文档中,数据源功能是以这种方式编写的:

public datasource: any = (request: any): Observable<any> => {
return this.service.getUsers(request);
}

像这样使用:
<ng2-ya-table [options]="options" [columns]="columns" [datasource]="datasource" [paging]="paging">
</ng2-ya-table>

我不想以这种方式使用此功能,因为我有静态
data = [
    {
        name: 'Patricia',
        email: 'Julianne.OConner@kory.org',
        username: 'Yes',
    },
    {
        name: 'Chelsey Dietrich',
        email: 'Lucio_Hettinger@annie.ca',
        username: 'No',
    }
]

这可能吗,或者我有义务提供可观察的类型?
我尝试了很多使用静态数据的尝试,但徒劳无功
public datasource: any = {
    return this.data ;
}

为什么此功能不起作用?

最佳答案

尝试:

public datasource: any = (request: any): Observable<any> => {
  return Observable.of({
    recordsTotal: this.data.length,
    recordsFiltered: this.data.length,
    data: this.data
  });
}

无论如何,您都需要执行分页,排序和过滤客户端(数据源是Observable以便执行此操作服务器端)。
例如(仅分页):
public datasource: any = (request: any): Observable<any> => {
  let page = (request.start / request.length) + 1;
  return Observable.of({
    recordsTotal: this.data.length,
    recordsFiltered: this.data.length,
    data: this.data.slice(request.length * (page - 1), request.length * page)
  });
}

关于grails - 如何在ng2-a-table中使用数据源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46163695/

相关文章:

docker - Grails + Docker

hibernate - HibernateDatastore Grails 2.3出现问题

node.js - 找不到模块 module.js :471 throw err:

angularjs - 如何动态地重新绘制表中的数据。 Angular 表

Grails 和 Spring 安全插件 : Redirecting user upon login based on roles

grails - OpenAM接收oAuth2身份验证代码,但不请求访问 token 无效的 session ID

typescript - 如何将 SockJS 添加到 Angular 2 项目中?

node.js - 当我通过 ng build --prod Angular 4.3.2 部署时出错

javascript - 单击标题时,排序 ngTable 不起作用

javascript - 使用嵌套 json 时,排序在 ngTable 中不起作用