Reactjs:意外的标记“<”错误

IT技术 reactjs
2021-04-19 03:22:30

我刚开始使用 Reactjs,正在编写一个简单的组件来显示
li标签,但遇到了这个错误:

意外标记“<”

我把例子放在 jsbin 下面 http://jsbin.com/UWOquRA/1/edit?html,js,console,output

请让我知道我做错了什么。

6个回答

我使用type = "text/babel"解决了它

<script src="js/reactjs/main.js" type = "text/babel"></script>
没错,使用“text/babel”而不是“text/jsx”。参考 babel 核心 url -> cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.24/browser.min.js
2021-05-23 03:22:30

更新:在 React 0.12+ 中,不再需要 JSX pragma。


确保在文件顶部包含 JSX 编译指示:

/** @jsx React.DOM */

如果没有这一行,jsx二进制和浏览器内转换器将使您的文件保持不变。

这在我的情况下有帮助:stackoverflow.com/questions/33460420/...
2021-05-25 03:22:30
但是 <script type="text/jsx"> 是
2021-06-03 03:22:30
使用 babel 我不得不扔进去type="text/babel"javascript 的美丽新世界
2021-06-03 03:22:30

问题Unexpected token '<'是因为缺少 babel 预设。

解决方案:您必须按如下方式配置您的 webpack 配置

{
  test   : /\.jsx?$/,
  exclude: /(node_modules|bower_components)/,
  loader : 'babel',
  query  : {
    presets:[ 'react', 'es2015' ]
  }
}

这里 .jsx 检查 .js 和 .jsx 格式。

您可以简单地使用 node 安装 babel 依赖项,如下所示

npm install babel-preset-react

谢谢

问题中没有任何内容表明原始海报也在使用 webpack。尽管它们都很方便,但在使用 React 时都不需要它们。
2021-05-24 03:22:30
@Nuwa 谢谢。npm install babel-preset-react解决了我的问题。
2021-05-28 03:22:30
问题中没有任何内容表明原始海报正在使用 babel。
2021-05-31 03:22:30
如果您.babelrc在项目中文件,仅"presets": ["env", "react", "es2015"]此而已!!
2021-06-07 03:22:30
他说他刚开始使用 Reactjs,因为必须使用 React babel 预设。可能是 webpack 配置错过了 babel 预设
2021-06-09 03:22:30

就我而言,我未能在脚本标签中包含 type 属性。

<script type="text/jsx">

我有这个错误,两天都无法解决。所以错误的修复很简单。在 body 中,你连接你的script,添加type="text/jsx",这将解决问题。

我认为当您提供 type="text/jsx" 时,您会使用编译器来了解这是什么类型的文档或文件。
2021-05-28 03:22:30
你也可以解释一下你的答案吗?
2021-06-01 03:22:30