Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
"Real" Mixins with JavaScript Objects
let mix = (object) => ({
with: (...mixins) => mixins.reduce(
(c, mixin) => Object.create(
c, Object.getOwnPropertyDescriptors(mixin)
), object)
});
@WebReflection
Owner

The original classes based version

@WebReflection
Owner

Example

let a = {a: 'a'};
let b = {b: 'b'};
let c = {c: 'c'};
let d = mix(c).with(a, b);
@ialarmedalien

Would you consider working this up into a tested/released version with full class support? (I know it's pretty short, but so is the original code!)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment