我在调用
linter
时报告了 _.isEqual
的错误:
https://github.com/typescript-eslint/typescript-eslint/blob/v4.22.0/packages/eslint-plugin/docs/rules/unbound-method.md
你知道我该如何纠正这个错误吗?
const liste = computed(() => { return _.uniqWith(_.map(liste.value, 'contrat'), _.isEqual) })
有一些选项:
由于
_.isEqual
在其体内不使用 this
,因此在这种特殊情况下您可以安全地忽略此规则:
/* eslint-disable-next-line @typescript-eslint/unbound-method */
const liste = computed(() => { return _.uniqWith(_.map(liste.value, 'contrat'), _.isEqual) })
您可以使用包装函数来保留调用上下文:
const liste = computed(() => { return _.uniqWith(_.map(liste.value, 'contrat'), (a, b) => _.isEqual(a, b)) })
显式绑定调用上下文。有点丑,但能完成工作:
const liste = computed(() => { return _.uniqWith(_.map(liste.value, 'contrat'), _.isEqual.bind(_)) })