Vue.js Vuex操作处理程序上下文对象和负载ESLint规则问题
我在vuex操作处理程序和ESLint规则方面遇到问题 如果未使用变量且对象为空,则此操作代码将ESLint标记为错误Vue.js Vuex操作处理程序上下文对象和负载ESLint规则问题,vue.js,vuex,eslint,Vue.js,Vuex,Eslint,我在vuex操作处理程序和ESLint规则方面遇到问题 如果未使用变量且对象为空,则此操作代码将ESLint标记为错误 actions:{ handler:({commit, state}, payload) =>{} } 提交和状态将作为未使用的变量抛出错误 actions:{ handler:({}, payload) =>{} } 此{}将抛出空对象 actions:{ handler:(payload) =>{} } 有效负载将返回上下文对象 这是我的
actions:{
handler:({commit, state}, payload) =>{}
}
提交和状态将作为未使用的变量抛出错误
actions:{
handler:({}, payload) =>{}
}
此{}将抛出空对象
actions:{
handler:(payload) =>{}
}
有效负载将返回上下文对象
这是我的eslint配置
"eslintConfig": {
"root": true,
"env": {
"node": true
},
"extends": [
"plugin:vue/essential",
"eslint:recommended",
"@vue/prettier"
],
"parserOptions": {
"parser": "babel-eslint"
},
"rules": {
"no-unused-vars": "warn",
"no-extra-boolean-cast": "warn"
}
我通过使用规则“无未使用的变量”:“警告”,“无额外的布尔类型转换”:“警告”,成功避免了ESLint错误
这里是一个陷阱:
我也有这个问题。我通过用一个简单的下划线(
)替换{commit,state}
解决了这个问题,如下所示:
操作:{
处理程序:(u,有效负载)=>{
//做点什么
}
}
据我所知,这是人类使用的“元约定”,即当开发人员想要向其他开发人员发出“此参数未使用”的信号时(例如,在Kotlin中经常使用)。我很惊讶地看到,我的linter跳过了这个符号的警告,我的单元测试也通过了
话虽如此,我认为我们需要更多地讨论一下为什么会这样,以及这是语言的一个双重特征还是纯粹的运气,或者更糟糕的是:我的项目中的一个令人讨厌的线头配置。我也遇到过这个问题。我通过用一个简单的下划线(
)替换{commit,state}
解决了这个问题,如下所示:
操作:{
处理程序:(u,有效负载)=>{
//做点什么
}
}
据我所知,这是人类使用的“元约定”,即当开发人员想要向其他开发人员发出“此参数未使用”的信号时(例如,在Kotlin中经常使用)。我很惊讶地看到,我的linter跳过了这个符号的警告,我的单元测试也通过了
话虽如此,我认为我们需要更多地讨论一下为什么会出现这种情况,以及这是语言的一个双重特征还是纯粹的运气,或者更糟糕的是:我的项目中出现了一个令人讨厌的lint配置。我也遇到了这个问题,这个链接可能会有所帮助 最后我这样做是为了阻止林特抱怨:
actions:{
handler:(_context, payload) => {
// do something
}
}
我也遇到了这个问题,这个链接可能会有帮助 最后我这样做是为了阻止林特抱怨:
actions:{
handler:(_context, payload) => {
// do something
}
}