更改列表项目符号的样式
Change style of list's bullet
我有一个 draft-js 组件。我可以将样式添加到 StyleMap 中(通过将新对象添加到 customStyleMap 中)。但是,当我有一个选定的列表并更改大小时,它只会更改选定文本的大小——项目符号仍然相同。我知道我可以使用 blockStyleFn={getBlockStyle}
更改块的样式,但这里我有两个问题:
据我所知,它只适用于已经定义的 classes - 但我不能对每个尺寸都有 classes。如何动态添加 class?
我怎样才能让风格脱颖而出?
所以在 getBlockStyle(block)
我必须做这样的事情:
let style = block.getStyleOfContent(); //for example returns fontSize: '16px'
addNewClass('listFontSize16px', style); //add new class
return listFontSize16px;
或任何其他解决方案?
好的,我想通了...
How to create a <style> tag with Javascript
在 getBlockStyle(block)
块中包含一个密钥。感谢密钥,我可以在 editorState 的内容中找到相同的密钥,并且有样式。
这不是最好的解决方案,但效果很好。
我有一个 draft-js 组件。我可以将样式添加到 StyleMap 中(通过将新对象添加到 customStyleMap 中)。但是,当我有一个选定的列表并更改大小时,它只会更改选定文本的大小——项目符号仍然相同。我知道我可以使用 blockStyleFn={getBlockStyle}
更改块的样式,但这里我有两个问题:
据我所知,它只适用于已经定义的 classes - 但我不能对每个尺寸都有 classes。如何动态添加 class?
我怎样才能让风格脱颖而出?
所以在 getBlockStyle(block)
我必须做这样的事情:
let style = block.getStyleOfContent(); //for example returns fontSize: '16px'
addNewClass('listFontSize16px', style); //add new class
return listFontSize16px;
或任何其他解决方案?
好的,我想通了...
How to create a <style> tag with Javascript
在
getBlockStyle(block)
块中包含一个密钥。感谢密钥,我可以在 editorState 的内容中找到相同的密钥,并且有样式。
这不是最好的解决方案,但效果很好。