作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对此有些陌生。所以,如果我弄错了,请原谅我。
我试图这样做是为了在 Protractor ElementFinder 类原型(prototype)上定义一个方法。
我在这里遵循合并拉取请求中的语法。 https://github.com/Microsoft/TypeScript/pull/6213
> 1 import { ElementFinder} from "protractor";
> 2
> 3 declare module "protractor" {
> 4 interface ElementFinder {
> 5 doSomething(): void;
> 6 } }
> 7
> 8
> 9 ElementFinder.prototype.doSomething = function (): void {
> 10 console.log("");
> 11 };
[ts] 'ElementFinder' only refers to a type, but is being used as a value here.
最佳答案
看起来像 ElementFinder
键入为 interface
而不是 class
.似乎没有名为 ElementFinder
的导出对象你可以引用得到它的原型(prototype)。 Protractor 给你一个ElementFinder
运行时的构造函数?如果是这样,您可以这样输入:
type Constructor<T> = {
new (...args: any[]): T;
readonly prototype: T;
}
declare module "protractor" {
interface ElementFinder {
doSomething(): void;
}
export const ElementFinder: Constructor<ElementFinder>;
}
ElementFinder
运行时的构造函数,否则当你运行它时它会爆炸。
关于angular - 模块扩充错误 :'x' 仅指一种类型,但在此处用作值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44823293/
我是一名优秀的程序员,十分优秀!