eslint直接用的airbnb
const emit = defineEmits<{
(event: 'update', collapse: boolean): void
}>()
const handleCollapse = () => {
emit('update', !props.collapse)
}
不想每个defineEmits都加
// eslint-disable-next-line no-unused-vars
更不想直接把no-unused-vars
这个规则关闭
有什么办法解决吗
2022/1/5 更新
今天整理 vue3 项目模板的时候,发现确实存在此问题,之前的回答不能很好解决,补充下。
配置:
由于项目中使用了
@typescript-eslint/eslint-plugin
,而 airbnb 官方没 typescript 依赖包,故关了no-unused-vars
规则 ,@typescript-eslint/no-unused-vars
是基于no-unused-vars
进行扩展,原回答中的选项仍可用。参考地址。
原回答
以下为 airbnb-base 的
no-unused-vars
相关配置:如果不想直接禁用此规则的话,可尝试以下的配置:
一、 不检测参数,保留其它不变
这样配置的话,所有函数参数相关的检测就被禁止了,无用变量的检测还能继续运行。
二、排除特定字符开头的参数
此配置影响较小,只要定义参数时,将无用的参数加上下划线即可:
具体可查看 ESLint 规则文档。