错误解析错误:意外令牌(Nuxt.js)

时间:2019-07-08 08:09:03

标签: vue.js eslint nuxt.js

我正在尝试使用以下功能来控制我的标签页(布尔玛CSS):

openTab(evt, tabName) {
      let i
      const x, tablinks
      x = document.getElementsByClassName('content-tab')
      for (i = 0; i < x.length; i++) {
        x[i].style.display = 'none'
      }
      tablinks = document.getElementsByClassName('tab')
      for (i = 0; i < x.length; i++) {
        tablinks[i].className = tablinks[i].className.replace(' is-active', '')
      }
      document.getElementById(tabName).style.display = 'block'
      evt.currentTarget.className += ' is-active'
    }

当WebPack重新加载页面时,出现以下错误:

Syntax Error: Unexpected token (330:6)                                                                friendly-errors 09:58:05

  328 |       let i
  329 |       const x
> 330 |       const tablinks
      |       ^
  331 |       x = document.getElementsByClassName('content-tab')
  332 |       for (i = 0; i < x.length; i++) {
  333 |         x[i].style.display = 'none'

我尝试将const更改为var,但这似乎无法解决问题。

这是我的eslintrc.js:

module.exports = {
  root: true,
  env: {
    browser: true,
    node: true
  },
  parserOptions: {
    parser: 'babel-eslint'
  },
  extends: [
    '@nuxtjs',
    'plugin:nuxt/recommended',
    'plugin:prettier/recommended',
    'prettier',
    'prettier/vue'
  ],
  plugins: [
    'prettier'
  ],
  // add your custom rules here
  rules: {
  }
}

有人知道是什么原因引起的吗?

1 个答案:

答案 0 :(得分:0)

您需要在声明const后立即为其分配一个值。您不能在顶部声明它,以后再分配一个值。

因此您需要将其编写为:

const x = document.getElementsByClassName('content-tab')

tablinks类似。

我不知道为什么将const更改为var不能解决问题,但是我很确定这是导致该错误消息的原因。当您尝试将其更改为var时,可能出了点问题。没有看到使用var时生成的错误消息,很难确定。

相关问题