【发布时间】:2017-07-03 23:58:41
【问题描述】:
在带有一些实例变量和方法的 ES6 类中,如何向其中添加 mixin?我在下面给出了一个例子,虽然我不知道 mixin 对象的语法是否正确。
class Test {
constructor() {
this.var1 = 'var1'
}
method1() {
console.log(this.var1)
}
test() {
this.method2()
}
}
var mixin = {
var2: 'var2',
method2: {
console.log(this.var2)
}
}
如果我运行(new Test()).test(),它将失败,因为类上没有method2,因为它在mixin中,这就是为什么我需要将mixin变量和方法添加到类中。
我看到有一个 lodash mixin 函数https://lodash.com/docs/4.17.4#mixin,但我不知道如何将它与 ES6 类一起使用。我可以使用 lodash 作为解决方案,甚至可以使用没有库的普通 JS 来提供 mixin 功能。
【问题讨论】:
标签: javascript node.js class ecmascript-6 lodash