javascript - 解析错误 : Unexpected token, 预期 ","

标签 javascript reactjs

我在 React js 中有以下代码。

class Posts extends Component {
  render() {
    return (
      {console.log('test')}
    );
  }
}

运行这段代码后出现错误

Parsing error: Unexpected token, expected ","

   8 |     return (
>  9 |       {console.log('test')}
     |       ^
  10 |     );
  11 |   }
  12 | }

更新

用父标签包裹它会返回同样的错误

>  9 |       <div>
     |       ^
  10 |         {console.log('nothing')}
  11 |       </div>

更新

这是全类

import React, { Component } from 'react';
import { connect } from 'react-redux';

class Post extends Component {
  render() {
    return (
      <div>
        {console.log('test')}
      </div>
    );
  }
}

const mapStateToProps = (state) => {
  return {
    posts: state
  }
};

export default Post;

最佳答案

当返回 jsx 时,你总是需要有一个包装父 JSX 标签。因为你没有任何 jsx 标签,所以它只是无效的 javascript。应该是:

class Posts extends Component {
  render() {
    return console.log('test')
  }
}

或者如果你想要 jsx

class Posts extends Component {
  render() {
    return (
      <div>
        {console.log('test')}
      </div>
    )
  }
}

编辑(2020-1-19)

jsx 现在支持父闭包的空标签:

class Posts extends Component {
  render() {
    return (
      <>
        {console.log('test')}
      </>
    )
  }
}

关于javascript - 解析错误 : Unexpected token, 预期 ",",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52998987/

相关文章:

javascript - 如何使 href 和 jquery click 事件同时工作

表行的 Javascript 比较以红色突出显示行 (CakePHP)

javascript - 提交表单时保持表单窗口打开

javascript - 干掉 React 代码。改变父组件背景的多个按钮组件

javascript - 两个淡入淡出切换效果之间的 Jquery 延迟

javascript - 我如何在地点图像上重新创建此 google plus 效果

javascript - 如何通过浏览器(Chrome)在运行时引发 javascript 错误?

reactjs - 为什么在react-select中使用自定义样式时出现 "No overload matches this call"TypeScript错误?

reactjs - 通天塔 : can't get "@babel/plugin-transform-destructuring" plugin to work

javascript - 如何使用 React Router v1.0.0 在页面中链接