【问题标题】:'test' does not exist in type 'UserConfigExport', even with reference types\'test\' 在类型 \'UserConfigExport\' 中不存在,即使是引用类型
【发布时间】:2022-10-07 20:47:22
【问题描述】:

this answerthe docs 中所述。我在 Vite 配置文件的顶部添加了 Vitest 的引用类型。

/// <reference types="vitest" />

为什么我仍然收到 TypeScript 警告 'test' does not exist in type 'UserConfigExport'

【问题讨论】:

  • 很难说。什么给了你警告? VS 代码还是 TSC?您是否尝试重新启动 IDE?或尝试替代解决方案 - import { defineConfig } from 'vitest/config';
  • 谢谢,使用vitest/config 中的defineConfig 解决了test: {...} 的问题,但在其他领域引入了问题(例如'polyfillDynamicImport' does not exist in type 'BuildOptions')。即使在重新启动后,多个 IDE 也会给我同样的警告。
  • 也许 Vite 和 Vitest 之间的版本不匹配?
  • 你找到解决办法了吗?我正在努力解决同样的问题。

标签: typescript vite vitest


【解决方案1】:

我找到了解决此问题的方法 - 创建单独的 vitest.config.ts 文件。正如docs 所说:

创建vitest.config.ts,它将具有更高的优先级,并将覆盖来自vite.config.ts 的配置

现在您将拥有test 选项的智能感知。

示例vitest.config.ts 文件:

import { defineConfig } from 'vitest/config';

export default defineConfig({
    test: {
        globals: true,
        environment: 'jsdom',
        coverage: {
            provider: 'istanbul', // or 'c8',
            all: true,
        },
    },
});

【讨论】:

    猜你喜欢
    • 2022-07-25
    • 2023-01-24
    • 2011-04-02
    • 2013-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-28
    • 1970-01-01
    相关资源
    最近更新 更多