0.5.0 • Published 9 years ago

es6-classes v0.5.0

Weekly downloads
3
License
MIT
Repository
github
Last release
9 years ago

Classes

A library for ES6 Classes support in all browsers using Babel helpers.

Install

NPM

$ npm i es6-classes --save

Bower

$ bower i es6-classes --save

Sample

Simple definition

function User(firstName, lastName) {
    this.firstName = firstName;
    this.lastName = lastName;
}

Classes.define(User, {
    getFullName: function() {
        return this.firstName + ' ' + this.lastName;
    },
});

var user = new User('Alan', 'Turing');
console.log(user.getFullName()); // -> "Alan Turing"

Inheritance

function SuperUser(firstName, lastName, role) {
    User.apply(this, arguments);
    this.role = role;
}

Classes.inherit(SuperUser, User);
Classes.define(SuperUser, {
    isAdmin: function() {
        return this.role === 'admin';
    },
}, {
    getFullName: function() {
        var superRes = Classes.super(this, User, 'constructor', arguments);
        return '> ' + superRes;
    }
});

var user2 = new SuperUser('Alan', 'Turing', 'admin');
console.log(user2.getFullName(), user2.isAdmin()); // -> "> Alan Turing" true

Dev

Chialab es6-workflow Travis Code coverage

Sauce Test Status

0.5.0

9 years ago

0.4.1

9 years ago

0.4.0

9 years ago

0.3.0

9 years ago

0.2.0

9 years ago

0.1.0

9 years ago

0.0.1

9 years ago