es6通过Mixin模拟多继承

这篇博客探讨了在项目中如何通过ES6的Mixin模式来模拟实现多继承,以提高代码的可读性和组织性。作者通过创建不同的混入(mixins)文件,如nodesMixins.js和linksMixins.js,将功能模块化,并在tree.js中应用这些混入,从而达到多继承的效果。
摘要由CSDN通过智能技术生成

      这周在项目中为了实现一个树形图,所以写了一个类,随着功能的增加,这个类越来越多,代码量也就越来越多,易读性很低,所以打算按功能将代码抽离到新的文件,就想到了类的继承,但是一般的类都是单继承,那么怎么实现多继承呢?

      引入一个概念混合模式,在修饰器的基础上,可以实现Mixin模式。所谓Mixin模式,就是对象继承的一种替代方案,中文译为“混入”(mixin),意为在一个对象之中混入另外一个对象的方法。看下方代码:

新建base.js文件

class base {
  constructor () {
  };
  init () {};
  setData () {};
  resize () {};
  _upadte () {};
  _initCanvas () {};
}
export default base

创建nodesMixins.js文件

const nodesMixin = (superClass) => class extends superClass {
    /**
     * 创建节点画布
     */
    _buildNodesCanvas () {
        console.log('node');
    };
};
export default nodesMixin

 创建linksMixins.js文件

const link
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值