另一个TS7006:参数“ X”隐式具有“ any”类型-但不完全相同

x80486

我知道有很多与此问题相关的问题/答案,据我所知,我理解它的本质,但是我不明白为什么在我明确设置和控制的类型上会发生这种问题。

我特意置身noImplicitAnytrue里面tsconfig.json; 我知道,如果我转而解决false这个问题,它将消失–但是我不想这样做...但是:)

这是代码:

# ./src/page/base.page.ts
export default class BasePage {
  public open(path: string) {
    browser.url(path);
  }
}

# ./src/page/home-search.page.ts
import BasePage from "./base.page";

class HomeSearchPage extends BasePage {
  public fillForm(term: string) {
    $("#search_form_input_homepage").setValue(term);
  }

  public open() {
    super.open(`${browser.options.baseUrl}`);
  }

  public submit() {
    $("#search_button_homepage").click();
  }
}

export default new HomeSearchPage();

# ./test/spec/search.engine.spec.ts
import HomeSearchPage from "@page/home-search.page";
import { expect } from "chai";

describe("DuckDuckGo (DDG) Search Engine", () => {
  it("Verify search result(s) for given term", () => {
    const expected: string = "WebdriverIO · Next-gen WebDriver test framework for Node.js";
    const input: string = "webdriverio";

    HomeSearchPage.open();
    HomeSearchPage.fillForm(input);
    HomeSearchPage.submit();

    expect($("div#r1-0 h2.result__title a.result__a").getText()).to.contain(expected);
  });
});

...最后,我的tsconfig.json(位于项目的根目录):

{
  "compilerOptions": {
    "alwaysStrict": true,
    "baseUrl": ".",
    "module": "commonjs",
    "paths": {
      "*": ["./*"],
      "@page/*": ["./src/page/*"]
    },
    "removeComments": true,
    "strict": true,
    "target": "es2018",
    "types": [
      "@wdio/mocha-framework",
      "@wdio/sync",
      "@types/chai",
      "@types/mocha",
      "node"
    ],

    //---------------------------------------------------------------------------------------------
    //  Experimental Settings
    //---------------------------------------------------------------------------------------------
    "noImplicitAny": true
  },
  "exclude": ["node_modules/"],
  "include": ["./src/**/*", "./test/**/*"]
}

使用该设置,我总是收到相同的错误消息:

[0-0] RUNNING in chrome - /test/spec/search.engine.spec.ts
0-0 worker error { name: 'TSError',
  message:
   '⨯ Unable to compile TypeScript:\nsrc/page/home-search.page.ts(5,14): error TS7006: Parameter \'term\' implicitly has an \'any\' type.\n',
  stack:
   'TSError: ⨯ Unable to compile TypeScript:\nsrc/page/home-search.page.ts(5,14): error TS7006: Parameter \'term\' implicitly has an \'any\' type.\n\n    at createTSError
...
at Module.load (internal/modules/cjs/loader.js:653:32)' }
[0-0] FAILED in chrome - /test/spec/search.engine.spec.ts
塞克勒

此错误来自ts-node在中wdio.conf.js,将您更改before: function()为:

  before: function (capabilities, specs) {
    require("ts-node").register({ files: true, transpileOnly: true });
  },

这里的问题还提到了与您所遇到的问题非常相似的问题。我在本地撤下了您的仓库,并成功进行了测试。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

函数重载错误:TS7006:参数“ x”隐式具有“ any”类型

打字稿:TS7006:参数“ xxx”隐式具有“ any”类型

错误 TS7006:参数“item”隐式具有“any”类型

firebase错误TS7006:参数“快照”隐式具有“任意”类型

错误 TS7006:参数“req”隐式具有“任何”类型

错误:参数“e”隐式具有“任何”类型。TS7006 - 反应打字稿

参数隐式具有“ any”类型

在具有相似但不完全相同的值的列上联接数据框

是!隐式强制,Boolean()不完全相同吗?

TS7006:参数“ __”隐式具有“ any”类型。我无法理解下面的错误和解决方案

Python如何在两个列表之间找到一个单词但不完全相同?

绑定元素'Component'隐式具有'any'类型.ts

参数“ dispatch”隐式具有“ any”类型

为什么参数“ props”隐式具有“ any”类型?

参数“error”隐式具有“any”类型

有没有一种方法可以在SQL数据库中搜索相似的单词(意味着不完全相同的单词)?

两个完全相同的USB闪存驱动器(棒)不完全相同

打字稿错误:TS7053元素隐式具有“ any”类型

React Navigation 5错误绑定元素'navigation'隐式具有'any'类型.ts

react / typescript:参数“ props”隐式具有“ any”类型错误

Angular2-参数$ event隐式具有“ any”类型

如何修复redux-observable参数'action $'隐式具有'any'类型

为什么GoogleMock报告的参数值不完全相同?

筛选出与上一年不完全相同的组中的数据框行

变量“ a”隐式具有“ any []”类型

创建具有与另一个表完全相同的结构的表变量

TS2683:“ this”隐式具有类型“ any”,因为它没有使用“ apply”进行类型注释

元素隐式具有 'any' 类型,因为类型 'typeof globalThis' 没有索引签名。 ts(7017) 打字稿

允许隐式转换具有相同基础结构的类型