【问题标题】:React: Parsing error in my functional component [duplicate]反应:我的功能组件中的解析错误[重复]
【发布时间】:2019-12-02 21:22:02
【问题描述】:

我安装了 babel-eslint 并添加了 "parser": "babel-eslint",但我仍然遇到解析错误。

我的 package.json 是:

{
  "name": "listassign",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "bootstrap": "^4.4.1",
    "react": "^16.12.0",
    "react-dom": "^16.12.0",
    "react-scripts": "3.2.0"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  },
  "eslintConfig": {

    "parser": "babel-eslint",
    "extends": "react-app"
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  },
  "devDependencies": {
    "babel-eslint": "^10.0.3"
  },
  "extends": [
    "standard",
    "standard-react"
]

}

我在文件中遇到错误:

function CharComponent(props){

    let displayList = [];

    function delete(e){
        let index = e.target.id;
        displayList.slice(index,1);
    }

错误是:Parsing error: Unexpected keyword 'delete'

我做了this 但没有帮助。

【问题讨论】:

  • delete 是 JavaScript 中的关键字。您不能将其用作函数/变量名称。
  • 该死的@Pointy 傻我!!!!!!你帮我避免浪费另一个小时来解决这个问题,谢谢!
  • 保留关键字作为属性名 (dupe target) 与此无关。

标签: javascript reactjs


【解决方案1】:

您需要将函数重命名为 delete 以外的名称。因为deletea keyword used by JavaScript,所以它不是一个有效的函数名。

尝试将其命名为

function deleteItem(e){
    let index = e.target.id;
    displayList.slice(index,1);
}

【讨论】:

    【解决方案2】:

    您不能使用 delete 作为关键字,因为它是 javascript 关键字!重命名您的函数,它应该可以正常工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-10-09
      • 1970-01-01
      • 1970-01-01
      • 2019-01-14
      • 2021-09-24
      • 1970-01-01
      • 2021-06-18
      • 1970-01-01
      相关资源
      最近更新 更多