You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TypeScript报错无法将WebdriverAjax命名空间作为值调用如何解决?

问题修复方案

该报错的根因是wdio-intercept-service为CommonJS模块,TypeScript默认导入规则会将其导出内容识别为命名空间类型,不允许作为函数值直接调用,可通过以下两种方法修复:

方案1:调整导入语法

将默认导入替换为TypeScript兼容CommonJS模块的专属导入写法:

import WebdriverAjax = require('wdio-intercept-service');
const interceptServiceLauncher = WebdriverAjax();

修改后代码可直接正常运行。

方案2:修改TypeScript全局配置

如果要保留原有ES模块默认导入的写法,只需在项目的tsconfig.json中开启两项配置即可:

{
  "compilerOptions": {
    "esModuleInterop": true,
    "allowSyntheticDefaultImports": true
  }
}

开启配置后TypeScript会自动完成CommonJS模块的默认导出适配,原有代码不需要做任何修改即可正常执行。

内容的提问来源于stack exchange,提问作者utf_8

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 08:24:09