我正在尝试使用Backbone.Model作为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;
api.json是一个简单的json文件,其中包含:
{test:1}
fetch
调用成功获取了数据(解析方法console.log显示了它),但是出现以下错误:Uncaught TypeError: Cannot read property 'test' of undefined
如果我切换到es5语法,该代码将起作用:
Backbone.Model.extend({...});
谁能解释一下?
最佳答案
您需要从构造函数内部调用super()
才能调用父类的构造函数。