импортировать расширение скроллера в угловое приложение и использовать его в качестве свойства опции - PullRequest
0 голосов
/ 28 февраля 2019

Я использую угловую версию Smart Admin, в которой мне нужно только определить параметры данных в компоненте и директиву в формате html, как.

Компонент

  dtOptions = {
    sDom: 'rt<"bottom"p>',
    pageLength: 10,
    serverSide: true,
    processing: true,
    ajax: (dataTablesParameters: any, callback) => {
      console.log(dataTablesParameters);
      this.http
        .post(
          'https://angular-datatables-demo-server.herokuapp.com/', dataTablesParameters, {}
        ).subscribe(( resp : any) => {
          resp = resp.json();
          console.log(resp);
          callback({
            recordsTotal: resp.recordsTotal,
            recordsFiltered: resp.recordsFiltered,
            data: resp.data
          });
        });
    },
    columns: [  
      { data: "id" },
      { data: "firstName" },
      { data: "lastName" }
    ],
  };

и передать эти параметры вtemplate

<sa-datatable [options]="dtOptions" tableClass="table table-striped">
    <thead>
        <tr>
            <th>ID</th>
            <th>First Name</th>
            <th>Last Name</th>
        </tr>
    </thead>
</sa-datatable>

Есть расширение / плагин с данными, называемый Scroller , который я хочу использовать в своем угловом приложении.До сих пор я устанавливал его с помощью NPM

npm i datatables.net-scroller

Затем импортировал его в мой класс компонентов.

import 'datatables.net-scroller';

Затемиспользовал его как свойство в параметрах

dtOptions = {
        sDom: 'rt<"bottom">',
        serverSide: true,
        ajax: (dataTablesParameters: any, callback) => {
          console.log(dataTablesParameters);
          this.http
            .post(
              'https://angular-datatables-demo-server.herokuapp.com/', dataTablesParameters, {}
            ).subscribe(( resp : any) => {
              resp = resp.json();
              console.log(resp);
              callback({
                recordsTotal: resp.recordsTotal,
                recordsFiltered: resp.recordsFiltered,
                data: resp.data
              });
            });
        },
        columns: [  
          { data: "id" },
          { data: "firstName" },
          { data: "lastName" }
        ],
        scrollY: 200,
          deferRender: true,
          scroller: {
             loadingIndicator: true
          }
};

, но у меня не сработало.Я также пытался импортировать как это

import { scroller } from 'datatables.net-scroller'

, затем использовал его, но не получил никаких изменений.Нужна помощь.

...