Language-tools: Error de mecanografiado: el objeto es desconocido al llamar a: "evento" para el componente secundario de la biblioteca externa que es JS

Creado en 10 sept. 2020  ·  3Comentarios  ·  Fuente: sveltejs/language-tools

Describe el error

Este es un error similar a este problema cerrado: https://github.com/sveltejs/language-tools/issues/396
Creo que la única diferencia es que el componente plainJS se usa en ese.
He intentado de varias maneras recrear cómo la persona que abrió ese lo ha resuelto, pero fue en vano.
Tengo un control deslizante de interfaz de usuario de material esbelto

Lo importo así

import Slider from '@smui/slider/bare.js';

esta es la línea problemática - <Slider on:volume-changed={event => changeTrackVolume(event, track)}/>

Si agrego mis tipos.d.ts

declare module '@smui/slider/bare.js' {
    export class Slider {
        $$prop_def: any;
        $on: any;
    }
}
Object is of type 'unknown'.ts(2571)
Argument of type 'typeof import("@smui/slider/bare.js")' is not assignable to parameter of type 'AConstructorTypeOf<unknown>'.
  Type 'typeof import("@smui/slider/bare.js")' provides no match for the signature 'new (...args: any[]): unknown'.ts(2345)

JSX element type 'Slider' does not have any construct or call signatures.ts(2604)

Estos son los errores que recibo.
También probé con @ smui / slider, etc. y exporté Slider predeterminado, nada funcionó hasta ahora.

Agradecería si alguien me pudiera indicar.

Gracias.

question

Comentario más útil

@dummdidumm que funcionó jajaja, eso es probablemente lo único que no probé, tan esquivo.

¡Muchas gracias!

Todos 3 comentarios

puede intentar agregar constructor a la definición de clase Slider

declare module '@smui/slider' {
  export default class Slider {
    $$prop_def: any;
    $on: any;
  }
}

luego importar como
import Slider from '@smui/slider';
funciona para mi.

Si eso no lo soluciona, ¿podría publicar un fragmento de código reproducible + paso a paso o un repositorio?

@dummdidumm que funcionó jajaja, eso es probablemente lo único que no probé, tan esquivo.

¡Muchas gracias!

¿Fue útil esta página
0 / 5 - 0 calificaciones