Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript typescript-不使用构造函数扩展类定义_Javascript_Backbone.js_Typescript - Fatal编程技术网

Javascript typescript-不使用构造函数扩展类定义

Javascript typescript-不使用构造函数扩展类定义,javascript,backbone.js,typescript,Javascript,Backbone.js,Typescript,我使用的库不是用TypeScript编写的,因此我必须使用定义文件 在这个定义文件中有一个没有构造函数的类(因为原始JS代码没有构造函数)。如果我试图在代码中扩展该类,则会出现以下错误: 错误:(36,2)TS2377:派生类的构造函数必须包含 “超级”电话 如果我向构造函数添加super(),JavaScript会抱怨: 未捕获的TypeError:\u super.call不是函数 如何修改定义文件,使此代码正常工作,并消除来自TS的第一个错误?(适用于TypeScript 1.6) 下面

我使用的库不是用TypeScript编写的,因此我必须使用定义文件

在这个定义文件中有一个没有构造函数的类(因为原始JS代码没有构造函数)。如果我试图在代码中扩展该类,则会出现以下错误:

错误:(36,2)TS2377:派生类的构造函数必须包含 “超级”电话

如果我向构造函数添加
super()
,JavaScript会抱怨:

未捕获的TypeError:\u super.call不是函数

如何修改定义文件,使此代码正常工作,并消除来自TS的第一个错误?(适用于TypeScript 1.6)


下面是定义文件的一个简单示例(基于:

在我的代码中,我有如下内容:

/// <reference path="libs/typescript/backbone/backbone.d.ts" />

class RosApiManager extends Backbone.Events {

    constructor() {
        super();
    }
}
//
类RosApiManager扩展了主干.Events{
构造函数(){
超级();
}
}

主干。事件
不是类(并且不应在.d.ts文件中声明为类)。不能扩展非类的内容。

有些可能会出错:

_super.call不是一个函数

如果他们错误地定义了类,比如

export class InlineIf extends React{... }
而不是

export class InlineIf extends React.Component {... }

将此添加为一个答案,希望将来有人会发现它有用…

好的,那么应该如何声明它呢?
ModelBase
Router
仍然需要以某种方式继承
事件的方法
…遇到同样的问题…想知道TS中是否有什么东西允许解决此
\u super.call(此);
语句,当我们确实不想调用它时…或者我们应该为此修复Backbone.d.ts文件:(
export class InlineIf extends React.Component {... }