有没有在我的gutenberg块内创建自定义块的函数?

时间:2019-02-13 07:46:55

标签: wordpress reactjs block jsx wordpress-gutenberg

我正在制作一个滑块,我想为我选择的每个图像创建一个滑块。

我已经有一个功能齐全的滑块。 问题是,如何从滑块创建调用滑块?我认为必须有一种通过API的方法,并且我找到了函数createBlock(),但实际上没有任何作用

const { createBlock } = wp.blocks;
//
// some code
//
<div id={ listId } className={ classes } key={ index }>
  {createBlock('illmatic6514/slide')}
</div>

我希望创建一个滑块。 (为简单起见,我从滑块中删除了变量并放入静态图像中) 我收到“无法读取未定义的属性'属性'

即使我调用createBlock('core / paragraph'),我也会得到“对象作为React子对象无效”

1 个答案:

答案 0 :(得分:1)

您可能想将Slide定义为组件而不是块:

function Slide(props) {
  return <div>{props.slideName}</div>;
}

或作为扩展Component的类:

const { Component } = wp.element
class Slide extends Component {
  render() {
    return (
      <div>{ this.props.slideName }</div>
    )
  }
}

然后在Slider块中使用该组件:

edit(props) {
  return (
    <div>
      <Slide slideName="Slide 1" />
      <Slide slideName="Slide 2" />
    </div>
  )
}

https://reactjs.org/docs/components-and-props.html