В настоящее время я работаю над текстовым редактором, где пользователь может добавлять изображения и текст. Я также хотел бы иметь панель инструментов для зависания, которая обслуживает разные кнопки в зависимости от того, какой тип элемента выбран пользователем.
Например, если пользователь выбрал изображение, то я бы хотел обслуживать один набор кнопок. Если пользователь выбрал абзац, я бы хотел использовать другой набор кнопок.
После просмотра примеров, найденных здесь:
https://www.slatejs.org/examples/richtext
Я собрал грубый пример желаемого текстового редактора без контекстно-зависимых кнопок панели инструментов:
https://codesandbox.io/s/suspicious-pine-lrxgw
Но я изо всех сил пытаюсь решить Как определить, какой тип элемента выбран в редакторе? Я не знаю, есть ли способ сделать это, используя сланцевую реакцию? Или даже в ванили JS?
В идеале я также смог бы получить другую информацию об элементе. Например, высота и ширина изображений, так как это поможет при оформлении.
Любая помощь приветствуется