我正在创建一个自定义块插件,但我在将类名显示在save函数的标记输出上时遇到了一些问题。
我的编辑函数使用return()并传入以下内容:
<>
<div className={className}>
<RichText
tagName="a"
//
placeholder={__("Add text…", plugin.slug)}
value={text}
//
formattingControls={["bold", "italic", "strikethrough"]}
//
onChange={this.onChangeContent}
//
/>
</div>
</>
在save函数中,我还使用return(),并尝试传入下面描述的许多变体。
Passing RichText.Content directly:
<RichText.Content
tagName="a"
value={text}
className={className}
/>
无论是否使用className行,它都可以保存
<a class="…">Demo Text</a>
到数据库。这是预期,但是,我需要用其他东西包装锚标记。
Using a wrapper shortcut:
<>
<RichText.Content
tagName="a"
value={text}
className={className}
/>
</>
上面,我已经把a标签包好了
<>
和
</>
但无论是否有className行,都不会在save函数中填充类名。
<a>Demo text</a>
始终保存到数据库。
Using a div:
<div>
<RichText.Content
tagName="a"
value={text}
className={className}
/>
</div>
上面,我已经把a标签包好了
<div>
和
</div>
但是,无论RichText标记中是否有className行,只有在保存到数据库时,才会在div标记中填充类名。
<div class="…"><a>Demo Text</a></div>
始终保存到数据库。
当我从a标记切换到p标记时,也会发生同样的情况。
有没有办法让类名填充封装在其他标记中的标记或者是否有人可以链接到有关ClassName如何工作的更多信息谢谢你!戴尔。