Estoy tratando de usar la biblioteca react-vis en mi proyecto. En su archivo Léame , solicitaron importar la biblioteca agregando las siguientes líneas en un entorno sin nodos:
Si está trabajando en un entorno sin nodos, también puede incluir directamente el paquete y el estilo compilado mediante etiquetas html básicas.
<link rel="stylesheet" href="https://unpkg.com/react-vis/dist/style.css"> <script type="text/javascript" src="https://unpkg.com/react-vis/dist/dist.min.js"></script>El objeto global
reactVisahora estará disponible para que juegues.
Cuando hice eso, recibí el siguiente error:
Uncaught TypeError: Cannot call a class as a function at _classCallCheck (dist.min.js:formatted:23789:27) at LabelSeries (dist.min.js:formatted:23823:21) at Constructor.render (<anonymous>:1866:23) at Constructor.<anonymous> (react.js:6029:34) at Constructor._renderValidatedComponent (react.js:11403:21) at Constructor.<anonymous> (react.js:5582:14) at Constructor.mountComponent (react.js:11403:21) at Constructor.mountChildren (react.js:10913:42) at Constructor._createContentMarkup (react.js:6812:32) at Constructor.<anonymous> (react.js:6734:14)Después de mucho investigar , me di cuenta de que el problema era que la biblioteca de react-vis sigue a ES6, mientras que mi proyecto está en ES5. Entonces, pensé en transpilar la biblioteca de react-vis a ES5. Después de investigar un poco en el repositorio de react-vis, descubrí que usa browserify .
Entonces, para compilar el proyecto ES6 en un solo archivo de paquete ES5 usando browserify, agregué --presets [ @babel/preset-env ] en esta línea como se sugiere aquí :
"build:browser": "browserify src/index.js -t [ babelify --presets [ @babel/preset-env ] ] --standalone reactVis | uglifyjs > dist/dist.min.js", También intenté agregar @babel/preset-react :
"build:browser": "browserify src/index.js -t [ babelify --presets [ @babel/preset-env @babel/preset-react] --rootMode upward ] --standalone reactVis | uglifyjs > dist/dist.min.js", Pero en ambos casos terminé recibiendo el mismo error: Cannot call a class as a function .
¿Qué me estoy perdiendo?