Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将带有JSX的文件添加到Html_Javascript_Reactjs_Babeljs_Jsx - Fatal编程技术网

Javascript 如何将带有JSX的文件添加到Html

Javascript 如何将带有JSX的文件添加到Html,javascript,reactjs,babeljs,jsx,Javascript,Reactjs,Babeljs,Jsx,请告诉我,如何用JSX将外部文件连接到Html页面 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport&qu

请告诉我,如何用JSX将外部文件连接到Html页面

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>

  <script crossorigin src="https://unpkg.com/react@16/umd/react.development.js"></script>
  <script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>
  <script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script>
</head>
<body>
  <div id="root"></div>
  <script type="text/babel" src="index.js"></script>
</body>
</html>

文件
index.js:

ReactDOM.render(<input value={null} />, document.getElementById('root'))
ReactDOM.render(,document.getElementById('root'))
但是如果我在“script”标记中复制代码,一切都会正常工作

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>

  <script crossorigin src="https://unpkg.com/react@16/umd/react.development.js"></script>
  <script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>
  <script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script>
</head>
<body>
  <div id="root"></div>
  <script type="text/babel">
    ReactDOM.render(<input value={null} />, document.getElementById('root'))
  </script>
</body>
</html>

文件
ReactDOM.render(,document.getElementById('root'))
index.html

<!DOCTYPE html><html><head><meta charset="UTF-8" /><title>Add React in OneMinute</title></head><body><div id="input_container"></div><script src="https://unpkg.com/react@17/umd/react.development.js" crossorigin></script>
<script src="https://unpkg.com/react-dom@17/umd/react-dom.development.js" crossorigin></script>
<script src="input.js"></script></body></html>

是的,这是可能的,但是没有JSX。想知道如何使用JSX实现同样的效果。您可以阅读已经尝试使用babel添加脚本标记的文档。最终的结果是一样的:在HTML的标记脚本中没有JSX代码。在HTML的标记脚本中使用JSX代码。在没有JSX的情况下从外部文件工作。使用JSX无法从外部文件工作。在控制台中是否有任何错误?例如,关于跨源的错误
"use strict";const e = React.createElement;class InputContainer extends React.Component {constructor(props) {super(props);}render() {
return e("input");}}const domContainer =document.querySelector("#input_container");ReactDOM.render(e(InputContainer), domContainer);