Block除了可以插入富文本外,还可以嵌套其他Block,这就需要使用 innerBlocks。我们继续在上一节的内容中操作,将innerBlocks的组件找到,直接在template中使用即可:
block-example/public_srcs/block-editor-ui.vue
<template>
<div class="block-example-wrapper">
富文本:
<editorRichText v-model:value="$props.block.data.title" tag="div" nowrap />
嵌套块:
<editorInnerBlocks class="contents" :value="$props.block.data.contents" />
</div>
</template>
<script setup>
var {editorRichText, editorInnerBlocks} = nv.components;
var $props = defineProps({
block: {default: Object}
})
</script>
<style scoped>
.block-example-wrapper, .contents {
border: 1px solid;
}
</style>
这样,就得到了可以输入和保存的嵌套模块了,效果如下: