Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

319
Views
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
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!