Acabo de comenzar con Reactjs y estaba escribiendo un componente simple para mostrar la
li
etiqueta y encontré este error:
Token inesperado '<'
He puesto el ejemplo en jsbin a continuación http://jsbin.com/UWOquRA/1/edit?html,js,console,output
Por favor, avíseme qué estoy haciendo mal.
ACTUALIZACIÓN: En React 0.12+, el pragma JSX ya no es necesario.
Asegúrese de incluir el pragma JSX en la parte superior de sus archivos:
Sin esta línea, el
jsx
transformador binario y en el navegador dejará sus archivos sin cambios.fuente
type="text/babel"
. Brave new world of javascriptEl problema Unexpected token '<' se debe a que falta el ajuste preestablecido de babel.
Solución: debe configurar la configuración de su paquete web de la siguiente manera
aquí .jsx comprueba los formatos .js y .jsx.
simplemente puede instalar la dependencia de babel usando el nodo de la siguiente manera
Gracias
fuente
npm install babel-preset-react
resolvió mi problema..babelrc
archivo en el proyecto"presets": ["env", "react", "es2015"]
y eso es todo !!en mi caso, no pude incluir el atributo de tipo en mi etiqueta de script.
fuente
Necesita transpilar / compilar ese código JSX a javascript o usar el transformador en el navegador
Mire http://facebook.github.io/react/docs/getting-started.html y tome nota de las
<script>
etiquetas, las necesita para que JSX funcione en el navegador.fuente
<script type="text/jsx">
etiqueta, si lo desea, pegue todo el código en un archivo hastebin.orgTengo este error y no pude resolverlo durante dos días, por lo que la solución del error es muy simple. En el cuerpo, donde conecte su
script
, agreguetype="text/jsx"
y esto resolverá el problema.fuente
Aquí hay un ejemplo de trabajo de su jsbin:
HTML:
jsx:
Ejecute este código desde un solo archivo y debería funcionar.
fuente
Si eres como yo y eres propenso a cometer errores tontos, también revisa tu package.json si contiene tu preset de babel:
fuente
Para un análisis correcto de la etiqueta, deberá utilizar esta versión de babel: https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.24/browser.js y el atributo "type = 'text / babel'" en el guión. Además, su script personalizado debe estar dentro de las etiquetas "body".
fuente
si consideramos la configuración de su sitio real, entonces necesita ejecutar ReactJS en la cabeza
y agregue un atributo a su archivo js - escriba = "text / babel" como
entonces el siguiente ejemplo de código funcionará:
fuente
Utilice el siguiente código. He agregado una referencia a React y React DOM. Utilice ES6 / Babel para transformar su código JS en JavaScript vanilla. Tenga en cuenta que el método Render proviene de ReactDOM y asegúrese de que el método render tenga un objetivo especificado en el DOM. A veces, es posible que tenga un problema de que el método render () no puede encontrar el elemento de destino. Esto sucede porque el código de reacción se ejecuta antes de que se procese el DOM. Para contrarrestar esto, use jQuery ready () para llamar al método render () de React. De esta manera, se asegurará de que DOM se procese primero. También puede utilizar el atributo defer en el script de su aplicación.
Código HTML:
Código JS:
Espero que esto resuelva tu problema. :-)
fuente
Compruebe si .babelrc está dentro de la carpeta raíz de su aplicación, no dentro de una subcarpeta. si ese es el caso, mueva el archivo a la raíz.
fuente
Puedes usar un código como este:
Y no se olvide de añadir
<div id='main-content'></div>
en elbody
en suhtml
Pero en su archivo package.json debe usar estas dependencias:
Es un trabajo para mí, pero también usé webpack, con estas opciones (en webpack.config.js):
fuente
En mi caso, además de los
babel
ajustes preestablecidos, también tuve que agregar esto a mi.eslintrc
:fuente
React
Hoy comencé a aprender y me enfrentaba al mismo problema. A continuación se muestra el código que había escrito.Y como puede ver, me perdí una coma (,) después de usar
<Hello/>
. Y el error en sí mismo es decir en qué línea debemos mirar.Entonces, una vez que agrego una coma antes del segundo parámetro para la
ReactDOM.render()
función, todo comenzó a funcionar bien.fuente
aquí hay otra forma en que puedes hacerlo html
archivo index.js con ruta src / index.js
use este package.json lo pondrá en funcionamiento rápidamente
fuente
Aunque, tenía todos los cargadores de babel adecuados en mi archivo de configuración .babelrc. Este script de compilación con parcel-bundler estaba produciendo el error de token inesperado <y errores de tipo mime en la consola del navegador para mí en la actualización manual de la página.
La actualización del script de compilación solucionó los problemas.
fuente