Vue3项目Eslint提示 the template root requires exactly one element

4 篇文章 0 订阅
2 篇文章 0 订阅

问题如下描述:

在创建了vue3.0的项目时发现,.vue文件的写法是按照vue3.0的来的,但是eslint还是会报错,提示:

the template root requires exactly one element

产生原因:

Vue3.0以前版本在template标签下只允许有一个标签

<template>
  <div>code</div>
</template>

<script>
export default { 
  // code 
}
</script>

所以在 eslint 的插件 vue/recommended 中有一条规则是vue/no-multiple-template-root,用来提示开发者,注意规范操作

但是从vue3.0开始就支持在template里面有多个标签,

而我们用的插件如果没有变化,甚至会从其它vue2.0项目拷贝信息过来的话,此时就会有这个问题了

问题产生的点在这里:extends: ['plugin:vue/recommended', 'eslint:recommended']

解决方案很简单:

plugin:vue/recommended 改为 plugin:vue/vue3-recommended

module.exports = {
      root: true,
      parserOptions: {
        parser: 'babel-eslint',
        sourceType: 'module'
      },
      env: {
        browser: true,
        node: true,
        es6: true,
      },
      extends: ['plugin:vue/vue3-recommended', 'eslint:recommended'],
  }

这样就不会报错了,原因很简单,咱们使用了3.0以前版本的rules改成3.0的就好了

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值