diff --git a/homeassistant/components/lovelace/__init__.py b/homeassistant/components/lovelace/__init__.py index 20792de8222..36130e362cd 100644 --- a/homeassistant/components/lovelace/__init__.py +++ b/homeassistant/components/lovelace/__init__.py @@ -380,7 +380,10 @@ def update_view(fname: str, view_id: str, view_config, data_format: "View with ID: {} was not found in {}.".format(view_id, fname)) if data_format == FORMAT_YAML: view_config = yaml.yaml_to_object(view_config) - view_config['cards'] = found.get('cards', []) + if not view_config.get('cards') and found.get('cards'): + view_config['cards'] = found.get('cards', []) + if not view_config.get('badges') and found.get('badges'): + view_config['badges'] = found.get('badges', []) found.clear() found.update(view_config) yaml.save_yaml(fname, config)