Improved InitializeDefinerProperty (babel-helper) to correctly handle properties with get/setters. (This is revision 2 of a fix...)
This commit is contained in:
parent
a8e859bb05
commit
05dfb60683
@ -1056,6 +1056,20 @@ helpers.initializerDefineProperty = helper("7.0.0-beta.0")`
|
||||
export default function _initializerDefineProperty(target, property, descriptor, context){
|
||||
if (!descriptor) return;
|
||||
|
||||
if(descriptor.set){
|
||||
Object.defineProperty(target, property, {
|
||||
get: descriptor.get,
|
||||
set: descriptor.set,
|
||||
configurable: descriptor.configurable,
|
||||
enumerable: descriptor.enumerable
|
||||
});
|
||||
|
||||
if(descriptor.initializer){
|
||||
descriptor.set.call(target, descriptor.initializer.call(context));
|
||||
}else if(descriptor.value!==undefined){
|
||||
descriptor.set.call(target, descriptor.value);
|
||||
}
|
||||
}else{
|
||||
Object.defineProperty(target, property, {
|
||||
enumerable: descriptor.enumerable,
|
||||
configurable: descriptor.configurable,
|
||||
@ -1063,6 +1077,7 @@ helpers.initializerDefineProperty = helper("7.0.0-beta.0")`
|
||||
value: descriptor.initializer ? descriptor.initializer.call(context) : void 0,
|
||||
});
|
||||
}
|
||||
}
|
||||
`;
|
||||
|
||||
/**
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user