Блок Wordpress GutenBurg — ожидается, что React.Children.only получит один дочерний элемент React

Когда я пытаюсь добавить Tooltip в WordPress при создании gutenburg blocks
он показывает ошибку. Проверьте ниже

Invariant Violation: Minified React error #143; visit https://reactjs.org/docs/error-decoder.html?invariant=143

React.Children.only expected to receive a single React element child

Вот мой код, который я пытаюсь.

<Fragment>
    <div className = "my-block-class">
        <Tooltip text = { __( 'Select Grid' ) }>
            { getIcon( 'block-icon', true ) }
        </Tooltip>
    </div>
    <InnerBlocks
        template = { this.getBlockTemplate() }
        templateLock = "all"
        allowedBlocks = { [ 'hwb/my-block' ] }
    />
</Fragment>

Проблема именно в этом коде.

<Tooltip text = { __( 'Select Grid' ) }>
    { getIcon( 'block-icon', true ) }
</Tooltip>

Когда я удаляю код Tooltip, он работает нормально.

Обновлять

getIcon() верните значок svg Я тоже пробовал Dashicon не работает значит проблема не в geticon() функции.

Я тоже пробовал так.

<Tooltip text = { __( 'Select Grid' ) }>
    <Dashicon icon = "edit" />
</Tooltip>

Как выглядит функция getIcon? Пожалуйста, включите это в свой вопрос.

Tholle 13.03.2019 10:52
getIcon() — это функция, которая возвращает svg, пожалуйста, проверьте обновление
Azeem Haider 13.03.2019 10:55
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
2
105
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Должна быть какая-то проблема в getIcon функции, которую я пробовал Dashicon, у меня работает нормально. Вы, вероятно, пропустили импорт Dashicon из wp-components

Попробуй это.

const { Tooltip, Dashicon } = wp.components;

<Tooltip text = { __( 'Select Grid' ) }>
    <Dashicon icon = "edit" />
</Tooltip>

Другие вопросы по теме