为什么我在 运行 ESLint 时会出现 "Unexpected character '@'" 解析错误?

Why do I get an "Unexpected character '@'" parsing error when I run ESLint?

我在 运行 eslint --cache --fix 时收到此解析错误(error Unexpected character '@' ParseError)。我不确定为什么我会看到这个错误,因为我在被标记为有问题的那条线附近的任何地方都没有“@”。以下是发生问题的我的代码片段:

const getCustomerInformation = async (id, role) => {
    return await gql
        .query({
            query: GET_CUSTOMER_DATA,
            variables: {
                id
            }
        })
        .then((res) => {
            response[role] = res
        })
}

GET_CUSTOMER_DATA正在从另一个文件导入,如下:

export const GET_CUSTOMER_DATA = gql`
    query getCustomerInformation($id: String!) {
        OSDTGetCustomerInformation(id: $id) {
            ... on CustomerSuccess {
                id
                fullName
            }
            ... on CustomerError {
                message
            }
        }
    }
`

被标记为有问题的行是 query: GET_CUSTOMER_DATA 第一个代码块中的字符 42。不过,如前所述,我没有看到使用“@”的实例,所以我不确定为什么会出现 linting 问题。如果有人能帮助我了解这里可能存在的问题,我将不胜感激。

FWIW,我正在使用 ESLint v7.31.0。

事实证明,pre-commit linter 识别出我没有为 getCustomerInformation() 添加任何文档。因此,linter 试图通过添加带有 getCustomerInformation()'s parameters (i.e., id & role) that included '@' 的注释来解决这个问题。但是,linter 没有将它们添加到正确的位置——这就是引发解析错误的原因。所以,我不得不手动添加文档。我在上面定义了 getCustomerInformation() 的地方添加了以下内容:

/**
* @param {string} id
* @param {string} role
*/