Cómo usar IScroll en un proyecto Angular / TypeScript

Yo tengo unAngular (Ionic) aplicación donde necesito un impulso de desplazamiento para el escritorio (que se ejecuta dentro deElectron).

Una forma prometedora de hacer esto puede ser usar IScroll, sin embargo, no puedo hacer que esto se cargue.

He instalado, así que tengo lo siguiente en mipackage.json

 "iscroll": "^5.2.0",

y también instaló los tipings a través denpm install @types/[email protected]

Primero, no pude importar, recibo un error[ts] File 'd:/dev/capacitor/electron2/node_modules/@types/iscroll/index.d.ts' is not a module.

uego intenté agregar lo siguiente al final deiscroll/index.d.ts ..

export {IScroll};

Ahora parecía eliminar el error.

Ahora agregué el siguiente código:

 public ngAfterViewInit() {
   var wrapper = document.getElementById('wrapper');
   var myScroll = new IScroll(wrapper);
 }

(Sé que debería, y lo haré, usar@ViewChild() solo tratando de hacerlo funcionar inicialmente)

Esto funciona bien, pero cuando voy a la página de prueba, aparece el siguiente error ...

        Error: Uncaught (in promise): TypeError: __WEBPACK_IMPORTED_MODULE_3_iscroll__.IScroll is not a constructor
    TypeError: __WEBPACK_IMPORTED_MODULE_3_iscroll__.IScroll is not a constructor
        at ListPage.webpackJsonp.190.ListPage.ngAfterViewInit (http://localhost:8100/build/main.js:114:24)
        at callProviderLifecycles (http://localhost:8100/build/vendor.js:13122:18)

IN la definición de tipo, tenemos lo siguiente ...

declare class IScroll {
  constructor (element: string, options?: IScrollOptions);
  constructor (element: HTMLElement, options?: IScrollOptions);

Alguien sabe cómo hacer que esto funcione?

¡Gracias de antemano por cualquier ayuda

[ACTUALIZACIÓN1] Mi siguiente intento fue eliminar la exportación de la definición de tipo, intente e importe de la siguiente manera.

import  'iscroll';

La aplicación se construye y ejecuta sin errores de TypeScript, hasta que ingresamos a la página que crea una instancia de IScroll, donde el error ahora se convierte en

    Error: Uncaught (in promise): ReferenceError: IScroll is not defined
    ReferenceError: IScroll is not defined
        at ListPage.webpackJsonp.190.ListPage.ngAfterViewInit (http://localhost:8100/build/main.js:116:24)
        at callProviderLifecycles (http://localhost:8100/build/vendor.js:13122:18)

Entonces, todavía no hay dónde.

[ACTUALIZACIÓN2]

Intentó las sugerencias de @ Jamshed

 import * as IScroll from 'iscroll'; or
 import IScroll from 'iscroll'; or
 import { IScroll } from 'iscroll'

Todos estos dan

[ts] File 'd:/dev/capacitor/electron2/node_modules/@types/iscroll/index.d.ts' is not a module

Intenté simplemente agregar la "forma antigua".

Así que en index.html agregué

<script src='D:/dev/capacitor/electron2/node_modules/iscroll/build/iscroll-lite.js'></script>

y luego eldeclare var IScroll: any; en el archivo de componente ts.

Pero una vez más obtengo

Error: Uncaught (in promise): ReferenceError: IScroll is not defined
    ReferenceError: IScroll is not defined

en tiempo de ejecución

[ACTUALIZACIÓN3]

Encontréesta publicació, pero si copio suindex.d.ts archivo en el mío, todavía no puedoimport {IScroll}. Puedo ver una serie de otras exportaciones, allí, pero no IScroll ...

Respuestas a la pregunta(0)

Su respuesta a la pregunta