我不认为古腾堡开箱即用地支持这一点。您可以通过替换保存功能中的<li>
with来修改富文本编辑器的内容。<li class="list-item">
您需要使用dangerouslySetInnerHTML将字符串呈现为 html 里面<ul>
save: function save(props) {
function createMarkup() {
return { __html: props.attributes.content.replace(/<li>/g, '<li class="list-item">') };
}
return el('ul', { dangerouslySetInnerHTML: createMarkup() });
}
更新
如果您在编辑器本身中添加新内容时需要立即执行此操作<li>
,则需要调用一个函数将类添加到<li>
RichText 组件的 onChange 事件中的元素。
edit: function edit(props) {
function setCustomClass() {
$('.list-group li').addClass('list-item');
}
return el(RichText, {
key: 'editable',
tagName: 'ul',
multiline: 'li',
className: 'list-group',
onChange: function onChangeContent(content) {
props.setAttributes({ content: content });
setCustomClass();
},
value: props.attributes.content
});
},