首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >主干: ECMAScript 6中的属性

主干: ECMAScript 6中的属性
EN

Stack Overflow用户
提问于 2015-07-02 20:02:16
回答 2查看 251关注 0票数 4

我正在搜索一个与以下骨干代码相当的好的ECMAScript 6:

代码语言:javascript
复制
var MyModel = Backbone.Model.extend({});

var MyCollection = Backbone.Collection.extend({
    model: MyModel
});

这种模式广泛应用于主干模型、视图和集合中。我可以比下面的代码做得更好(例如,通过创建一个名为“model”的方法)?

代码语言:javascript
复制
export class MyModel extends Backbone.Model {}

export class MyCollection extends Backbone.Collection {
    constructor() {
        super({model: MyModel});
    }
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-02 23:12:57

我会用一个吸气器:

代码语言:javascript
复制
export class MyModel extends Backbone.Model {}

export class MyCollection extends Backbone.Collection {
  get model() {
    return MyModel;
  }
}
票数 3
EN

Stack Overflow用户

发布于 2015-07-02 20:13:37

当然,不要使用class关键字:

代码语言:javascript
复制
var MyModel = Backbone.Model.extend({});

var MyCollection = Backbone.Collection.extend({
    model: MyModel
});

实际上,这段代码比您编写的ECMAScript 6等效代码更可重用。ECMAScript 6实际上比原来的更糟。

您必须了解,在JavaScript中,对象可以在没有类的情况下存在,而且该特性非常重要。

下面是道格拉斯·克罗克福德在2008年关于原型继承的文章:http://javascript.crockford.com/prototypal.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31193667

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档