es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Array de tipos/objetos definidos por el usuario en TypeScript como propiedad en Lit v2

Me gustaría convertir mis CustomElements/WebComponents de Javascript existentes (hechos con Lit v1 y portados a v2) a TypeScript.

Ejemplo:

export class MyElement extends LitElement {
  ...
  @property({type: String})
  name = 'World';
  ...
}

… o otro ejemplo: https://github.com/lit/lit-element-starter-ts/blob/main/src/my-element.ts#L37

¿Cómo puedo definir una propiedad como un array de mis clases personalizadas de TypeScript?

Por ejemplo:

javascript
export class MyElement extends LitElement {
...
@property({type: Array<mycustomclass>})
customClassArray = [];
// o bien: customClassArray = [new MyCustomClass("foo")];
...
}

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para definir una propiedad como un array de clases TypeScript personalizadas, puedes utilizar la siguiente sintaxis:

    @property({type: Array})
    myArray: MyCustomClass[];
    

    Esto define una propiedad llamada myArray que es un array de instancias de MyCustomClass. Puedes inicializar este array con algunos valores de la siguiente manera:

    this.myArray = [new MyCustomClass('foo'), new MyCustomClass('bar')];
    

    Ten en cuenta que necesitas importar MyCustomClass en la parte superior de tu archivo para que esto funcione. Además, es posible que necesites incluir cualquier declaración de import necesaria para los tipos o interfaces personalizados utilizados en MyCustomClass.

Comments are closed.