Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.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 使用主干.Model作为es6类_Javascript_Backbone.js_Ecmascript 6 - Fatal编程技术网

Javascript 使用主干.Model作为es6类

Javascript 使用主干.Model作为es6类,javascript,backbone.js,ecmascript-6,Javascript,Backbone.js,Ecmascript 6,我正在尝试使用主干。模型作为ES6类。这是我的代码: import Backbone from 'backbone'; import $ from 'jquery'; Backbone.$ = $; class DataManager extends Backbone.Model { url() { return 'api.json'; } parse(data) { console.log(data); return d

我正在尝试使用主干。模型作为ES6类。这是我的代码:

import Backbone from 'backbone';
import $ from 'jquery';
Backbone.$ = $;

class DataManager extends Backbone.Model {
    url() {
        return 'api.json';
    }
    parse(data) {
        console.log(data);
        return data;
    }
    constructor() {
        this.fetch()
    }
}

export default DataManager;
json是一个简单的json文件,包含:
{test:1}

fetch
调用成功地获取了数据(parse method console.log显示了它),但我得到了以下错误:

Uncaught TypeError: Cannot read property 'test' of undefined
如果我切换到es5语法,代码就会工作:
Backbone.Model.extend({…})


有人能解释一下吗?

您需要从构造函数内部调用
super()
,以便调用父类的构造函数。

不要执行类似于从构造函数获取的行为。它被放在一个方法中,供您在构造函数之外的任何地方使用。首先创建一个对象,然后告诉它该做什么。不要让它在你创建它的时候启动