Intentando abrir los siguientes archivos con Chrome y está en blanco. ¿Qué estoy haciendo mal? Estoy tratando de vincular el archivo js y usarlo para mostrar un h1, pero por alguna razón no puedo entenderlo.
solo dos archivos
índice.html
<!DOCTYPE html> <html lang="en"> <head> <title>React App</title> <script src="https://unpkg.com/react@16/umd/react.production.min.js"></script> <script src="https://unpkg.com/react-dom@16/umd/react-dom.production.min.js"></script> script src="https://unpkg.com/babel-standalone@6.15.0/babel.min.js"></script> </head> <body> <div id="root"></div> <script src="main.js"></script> </body> </html>principal.js
function tick() { const element = ( <div> <h1>Hello, world!</h1> <h2>It is {new Date().toLocaleTimeString()}.</h2> </div> ); ReactDOM.render( element, document.getElementById('root') ); } setInterval(tick, 1000);1.) Lo primero que no se abre ni se cierra correctamente es la etiqueta del script babel.
script src="https://unpkg.com/babel-standalone@6.15.0/babel.min.js"></script>debería ser como a continuación:
<script src="https://unpkg.com/@babel/standalone/babel.min.js"></script>2.) también debe especificar el tipo babel en su secuencia de comandos que tiene código JSX/react:
<script type="text/babel" src="">3.) (Imp.) Su componente Any react debe comenzar con una letra mayúscula. He usado la función como componente de reacción para renderizar que devuelve el código JSX. y mantuvo el RenderDOM fuera del componente React. si tengo que refactorizar tu código:
function Tick() { return ( <div> <h1>Hello, world!</h1> <h2>It is {new Date().toLocaleTimeString()}.</h2> </div> ); } ReactDOM.render( <Tick />, document.getElementById('root') );