mirror of
https://github.com/flarum/framework.git
synced 2025-04-25 06:04:04 +08:00
Change extend function so that a value doesn't have to be returned
override should be used instead to override the return value.
This commit is contained in:
parent
7e1b343900
commit
d4e8276b3f
@ -1,16 +1,17 @@
|
||||
export function extend(object, func, extension) {
|
||||
var oldFunc = object[func];
|
||||
var original = object[func];
|
||||
object[func] = function() {
|
||||
var args = [].slice.apply(arguments);
|
||||
var value = oldFunc.apply(this, args);
|
||||
return extension.apply(this, [value].concat(args));
|
||||
var value = original.apply(this, args);
|
||||
extension.apply(this, [value].concat(args));
|
||||
return value;
|
||||
}
|
||||
};
|
||||
|
||||
export function override(object, func, override) {
|
||||
var parent = object[func];
|
||||
var original = object[func];
|
||||
object[func] = function() {
|
||||
var args = [].slice.apply(arguments);
|
||||
return override.apply(this, [parent.bind(this)].concat(args));
|
||||
return override.apply(this, [original.bind(this)].concat(args));
|
||||
}
|
||||
}
|
||||
};
|
||||
|
Loading…
x
Reference in New Issue
Block a user