时间: 2020-08-30|tag:27次围观|0 条评论

例如这样一个case

class Test {     constructor() {       this.var1 = 'var1'     }     method1() {       console.log(this.var1)     }     test() {       this.method2()     } } const mixin = {     var2: 'var2',     method2: {       console.log(this.var2)     } } 

Javascript中的类只是语法糖,它使添加构造函数/原型对变得简单明了。功能没有从ES6之前的代码有变化。

可以将属性添加到原型:

Object.assign(Test.prototype, mixin); 

可以在构造函数中添加它来创建的每个对象:

constructor() {     this.var1 = 'var1';     Object.assign(this, mixin); } 

你可以在构造函数中根据条件将其添加:

constructor() {     this.var1 = 'var1';     if (someCondition) {       Object.assign(this, mixin);     } } 

或者可以在创建后将其分配给对象:

let test = new Test(); Object.assign(test, mixin); 

文章转载于:https://www.jianshu.com/p/625e36a85a08

原著是一个有趣的人,若有侵权,请通知删除

本博客所有文章如无特别注明均为原创。
复制或转载请以超链接形式注明转自起风了,原文地址《如何将mixin添加到JavaScript Class
   

还没有人抢沙发呢~