Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

316
Visualizações
Reaccionar Extendiendo una clase obtengo "classCallCheck.js:3 TypeError no detectado: no se puede llamar a una clase como una función"

Encontré muchas preguntas y respuestas para esto, pero creo que la mía es ligeramente diferente. Todo lo que quiero hacer es usar la funcionalidad Base Class A en la Class B secundaria heredada, pero quiero usar una funcionalidad diferente para el método Cell . Con versiones anteriores de Webpack, funcionó bien, pero las versiones más nuevas de Webpack generan un "Error de tipo no detectado : no se puede llamar a una clase como una función ". El código de Webpack detecta el error es

 export default function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

Leí que tiene que ver con la instancia de clase y usar una new palabra clave es la forma de hacerlo funcionar. En mi caso, usando la última solución, pierdo toda la funcionalidad de la Base Class A creando nuevos tipos de errores porque la Base Class ya se usa como una instancia de las otras partes de las aplicaciones y mantiene sus propios estados. Lo intenté con un código de ejemplo como este

const C = new B() y return (<C param1={x}>); pero tampoco funcionó. ¿Alguna recomendación?

Aquí hay una versión simplificada de mi código.

 /****************BASE CLASS********************************/ const A = (props) => { const Cell = ({ p: row }) => { return .......... }; } export default A; /*************CHILD CLASS**********************************/ import { B } from 'baseClass'; export default class B extends A { Cell = ({ p: row }) => { return .......... }; } /*************MAIN**********************************/ import React, { Component } from 'react'; import B from 'childClass'; const List = class extends Component { render() { return (<B param1={x}>); } };
about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda