WordPress Gutenberg RichText, как я могу установить значение по умолчанию с источником: «дети» при использовании `multiline="p"`?

При регистрации нового блока я не могу установить значение по умолчанию, если использую RichText с тегом multiline

  attributes: {
    header: {
      type: 'string',
      source: 'text',
      selector: 'h2',
      default: 'default',
    },
    text: {
      type: 'array',
      source: 'children',
      selector: 'div',
      default: 'Lorem Ipsum Dolor Sit Amet',

//    also tested, same result
//    default: ['Lorem Ipsum Dolor Sit Amet', 'test', 'test2'],
//    default: () => <p>Lorem Ipsum Dolor Sit Amet</p>,
//    default: [() => <p>Lorem Ipsum Dolor Sit Amet</p>],

    },
  },
  edit: ({ attributes: { header, text }, setAttributes }) => {
    const blockProps = useBlockProps()

    return (
      <div {...blockProps}>
        <RichText tagName = "h2" placeholder = {'Header'} onChange = {header => setAttributes({ header })} value = {header} />
        <RichText
          tagName = "div"
          multiline = "p"
          placeholder = {'Write here the description'}
          onChange = {text => setAttributes({ text })}
          value = {text}
        />
      </div>
    )
  },

Если я уберу строку multiline = "p", я увижу текст по умолчанию, но с ним я ничего не увижу

Где ошибка?

Как убрать количество товаров в категории WooCommerce
Как убрать количество товаров в категории WooCommerce
По умолчанию WooCommerce показывает количество товаров рядом с категорией, как показано ниже.
0
0
672
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Я смог сделать это, используя то, что вы собираете, когда редактируете текст вручную.

default: [
  { type: 'p', props: { children: ['Lorem Ipsum Dolor Sit Amet'] } },
  { type: 'p', props: { children: ['test'] } },
],
Ответ принят как подходящий

Альтернативный упрощенный способ использования атрибутов для установки значения по умолчанию для RichText с помощью multiline = "p":

    attributes: {
    ...
    text: {
        type: 'string', // changed from array
        source: 'children',
        selector: 'div',
        default: [<p>Lorem Ipsum Dolor Sit Amet</p>, <p>test</p>, <p>test2</p>]
    }

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