'scope' is defined but never used

   在template使用scope属性时可能会出现波浪线或者编译时提示错误,但最终的编译结果正常,其实这是ESlint插件检查语法规范所致,该问题并不会影响程序的正常运行。

  (一)在scope属性值下方出现红色波浪线,如下图所示

  它表明scope这变量已经定义了,但是从未被使用过。

  (二)编译提示错误,如下图所示:

  其实,在该错误的下方给出了修改策略,如下图所示:

  我们可以根据提示命令进行屏蔽编译过程的错误。

  (三)命令的使用

   在代码中我们可以利用命令来屏蔽一些语法规范的检查,如 eslint-disable-next-line和eslint-disable,注意了这些命令必须要采用注释的方式使用。

  (1)eslint-disable命令的使用

  eslint-disable命令表示会将该命令所在行后面的所有文件进行语法规范检查屏蔽,若遇到eslint-enable命令就会结束屏蔽。

  • 若想屏蔽整个文档的语法规范检查,那么在文件的开头直接使用eslint-disable命令,在Vue文件的template标签中这样使用:<!-- eslint-disable -->,在script标签中这样使用: /* eslint-disable */
  • 若想屏蔽某段代码的语法规范检查,那么就结合eslint-disable和eslint-enable命令,在Vue文件的template标签中这样使用:<!-- eslint-disable --> 和 <!-- eslint-enable>两个命令将某段代码块包住,在script标签中这样使用:/* eslint-disable */ 和 /* eslint-enable */ 两个命令将某段代码块包住。

  (2)eslint-disable-next-line命令的使用

  eslint-disable-next-line命令表示该命令所在行的下一行的代码规范被屏蔽检查了。

  • 在Vue文件的template标签中这样使用:<!-- eslint-disable-next-line -->
  • 在Vue文件的script标签中这样使用: // eslint-disable-next-line

  (四)修改示例

  这样修改后再次编译,结果显示没有错误提示了。

  (五)Vue新版本中还可以这样修改

  用slot-scope属性代替scope属性,修改如下图所示:

  这样修改后,也许你不会遇到编译错误了,不过也有些同学还是出现编译错误,此时你就按照上述的方式来屏蔽吧。

 

posted @ 2020-02-16 14:21  晒太阳的兔子很忙  阅读(8286)  评论(2编辑  收藏  举报