为什么 TS 错误是在签出 PR 后在本地抛出的,而不是在 CI 上抛出的?

问题描述 投票:0回答:2

我正在使用 TS 在 Cypress 中进行一些 e2e 测试,并试图理解为什么我在本地出现 TS 错误,而 CI 上没有抛出错误。

这很奇怪,因为在查看 PR 之前我没有遇到 Cypress 的 TS 错误,但现在有了。没有更改 tsconfig 设置,所以我很困惑为什么会发生这种情况。

检查完我们的 PR 后,我对

resolveJsonModule
选项感到困惑,但这是我在 Cypress 中当前的 tsconfig:

{
    "compilerOptions": {
        "strict": true,
        "target": "es6",
        "lib": ["esnext", "dom"],
        "baseUrl": "./",
        "resolveJsonModule": true,
        "esModuleInterop": true,
        "noImplicitAny": false,
        "types": ["cypress", "@testing-library/cypress"]
    },
    "include": ["**/*.ts"]
}

克隆 PR 后收到的所有 TS 错误,在克隆此 PR 之前不存在:

更新:将问题范围缩小到 VSCODE 特定问题,因为应用程序可以从命令行完美构建。

typescript visual-studio-code cypress e2e-testing cypress-testing-library
2个回答
0
投票

一种可能是

ethers
模块已添加到 PR 中,但尚未安装到您的本地构建中。如果是这种情况,运行
npm i
应该可以修复它。


0
投票

我将此行添加到 VScode 中的 JSON 设置中以阻止错误,但不确定这是否是最佳方案:

"typescript.validate.enable": false,
© www.soinside.com 2019 - 2024. All rights reserved.