扩展基:JavaScript中多个继承的简单库.
这个库可用于实现JavaScript的多层继承,但由于它隔离了基础类,防止了属性和方法相撞而将自己与其他库分开来进行多层继承,同时仍然允许容易地取用基础类的属性和方法.
安装
简单运行 :
npm add extend-bases
或者说:
yarn add extend-bases
要导入 :
import {bases, defineProperties, isInstanceOf} from "extend-bases";
或者说:
const {bases, defineProperties, isInstanceOf} = require("extend-bases");
开始
从多个碱基继承 bases(Class1, Class2, ...)在构造器中通过 实例 分类至 super 建筑师.
然后直接从 this.,具有该财产或方法的一等优先.
访问特定的基础用途 this.bases[index]。 。 。 .
替换所有实例 v instanceof Class 与 isInstanceOf(v, Class)如此简单.
详情
执行详情
这个图书馆使用 Proxies , 可惜没有 IE11 支持, 但否则这个图书馆也会导入 es-shims 用于 Reflect.ownKeys(ES6,但经常使用,而且有一个s-shim存在)和 Array.prototype.flatMap(ES2019,非常新),对于一些浏览器来说,它们被认为是瓶颈.
这个库在类例中使用代理来方便访问,它合并了基类的原型,但是对于基类的隔离,它创造了一个新的功能来包装方法调用. 最好看看源代码.
类型脚本支持
库默认是用 TypeScript 写成的, 如果不是的话, 你们都应该用它来完成伟大的代码 。 TypeScript定义的细节有点模糊,所以最好不要担心它们,它们很有效或者你可以只看源代码。 。 。 .
捐款
随意打开拉出请求,修复bugs,或读取源代码. 由你决定.