diff --git a/src/style_manager/model/Property.js b/src/style_manager/model/Property.js index a6f80b3ee..0883e777b 100644 --- a/src/style_manager/model/Property.js +++ b/src/style_manager/model/Property.js @@ -90,11 +90,15 @@ export default class Property extends Model { /** * Check if the property has value + * @param {Object} [opts={}] Options + * @param {Boolean} [opts.noParent=false] Ignore the value if from parent target. * @returns {Boolean} */ - hasValue() { + hasValue(opts = {}) { + const { noParent } = opts; + const parentValue = noParent && this.getParentTarget(); const val = this.get('value'); - return !isUndefined(val) && val !== ''; + return !isUndefined(val) && val !== '' && !parentValue; } /** diff --git a/src/style_manager/model/PropertyRadio.js b/src/style_manager/model/PropertyRadio.js index a89f4f065..be7aed166 100644 --- a/src/style_manager/model/PropertyRadio.js +++ b/src/style_manager/model/PropertyRadio.js @@ -16,7 +16,7 @@ export default class PropertyRadio extends Property { getOptions() { // support old list property const { options, list } = this.attributes; - return options && options.length ? options : list; + return (options && options.length ? options : list) || []; } /**