使用标准ES5我有这样的方法,让我来添加方法到我的图书馆的原型链(它允许核心库的扩展,还附加到库中的所有组件):扩展ES6类编程
library.extend = function(extendId, extendObj) {
//if it's an extension of the core library object...
if(extendId === 'library') {
library.prototype[extendObj.name] = extendObj.func;
} else {
library.component[extendId].prototype[extendObj.name] = extendObj;
}
};
用法是:
/* create some new class */
var somecomponent = function() {}
somecomponent.protoype.somemethod = function() {}
/* extend the base libraries prototype chain with the new class*/
library.extend('library', somecomponent)
在ES6类我们也有原型,但它们是由类语法屏蔽,你应该添加使用extends
方式方法的类。
因此,我不确定如何使用类似于上面的方法以编程方式将方法添加到es6类。
没有显示你如何使用这段代码,很难理解你在问什么。但是...通常ES2015类可以被认为是“正常”(ES5)功能。 – Amit
你应该能够扩展原型。类更不仅仅是语法糖。 – webduvet
@Amit我已经添加了一个用法示例,虽然我认为代码真的是自己说话......它只是扩展了一个原型链。 –