Issue #5633Opened January 20, 2024by kla-ko0 reactions

BUG: Cannot select component in ``component:remove`` handler

Question

GrapesJS version

  • I confirm to use the latest version of GrapesJS

What browser are you using?

Chrome Version 120.0.6099.225

Reproducible demo link

https://jsfiddle.net/wattnu/opmwfvjn/

Describe the bug

How to reproduce the bug?

  1. open and run the fiddle
  2. two components are on the canvas. The "hello world" div and a blue background div.
  3. The "hello world" div is selected due to the command editor.select(editor.getComponents().models[0]);
  4. When selecting the blue box and when choosing delete in the canvas spot, the component:remove handler is called.
  5. However, the "hello world" div is not selected afterwards as demanded by the instruction in the handler

What is the expected behavior? editor.select(editor.getComponents().models[0]); shall work in the handler

What is the current behavior? editor.select(editor.getComponents().models[0]); shows no effect in the handler

Code of Conduct

  • I agree to follow this project's Code of Conduct

Answers (2)

artfJanuary 21, 20240 reactions

Thanks @kla-ko there is actually one logic that prevents selecting other components during component:remove events and I will fix it for the next release but what I'd suggest to you is to switch to another event.

The event component:remove is triggered for each removed component, which means it will be triggered for each nested one inside the one you decided to remove. You can use run:core:component-delete event which is triggered only once after the deletion command is completed and it should currently work without any fix.

kla-koJanuary 21, 20240 reactions

Thanks @artf . This works like a charme ! /

Related Questions and Answers

Continue research with similar issue discussions.

Paid Plugins That Match This Issue

Curated by issue keywords and label relevance to help you ship faster.

View all plugins

Loading paid plugin recommendations...

Browse Plugin Categories

Jump directly to plugin category pages on the marketplace.