× PortadaNoticiasTrabajoColaboraciónEnlacesForosIRCFormaciónNosotros
Stratos: Developer's Meeting Point

Welcome to Stratos!

Acceder

Foros





Esto es posible? (Typescript) (Autor : J_F_NASH)
« 20 de Febrero de 2021, 10:31:16 pm »
class  Tabla{
    static mensaje:string = 'hola 1';
    static muestraMensaje:() => void;
};
const tablero = new Tabla();

// Quiero definir el mtodo fuera de la clase (no quiero que con el tiempo mi clase llegue a parecerse a una vaca preada)
Tabla.muestraMensaje = function(){
    console.log(this.mensaje);
}
Tabla.muestraMensaje() // salida: 'hola 1' (hasta aqui es correcto)

// El problema lo tengo con los objetos. Por ejemplo:
tablero.mensaje = 'hola 2' // error porque 'mensaje' es static!
// Luego quiero ver el nuevo mensaje enviado a tablero
tablero.muestraMensaje(); // error pues el metodo es static!

// Cual es el metodo de trabajo para poder hacer esto?
« ltima modificacin: 21 de Febrero de 2021, 08:40:50 am por J_F_NASH »
Responder #1 por J_F_NASH
« 21 de Febrero de 2021, 03:43:43 pm »
Solucin:
class  Tabla{
    visible:boolean;
    constructor(visible:boolean){
        this.visible = visible;
    }
    muestra() {}
};

Tabla.prototype.muestra = function(){
    Tabla.prototype.visible = false;
    console.log(this.visible);
}
const tablero = new Tabla(true);

Tabla.prototype.muestra();
tablero.muestra();
[code]








Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.