我正在使用 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 特定问题,因为应用程序可以从命令行完美构建。
一种可能是
ethers
模块已添加到 PR 中,但尚未安装到您的本地构建中。如果是这种情况,运行 npm i
应该可以修复它。
我将此行添加到 VScode 中的 JSON 设置中以阻止错误,但不确定这是否是最佳方案:
"typescript.validate.enable": false,