7.Draftjs 学习笔记-StateToHtml
来源:互联网 发布:mac怎么用u盘重装系统 编辑:程序博客网 时间:2024/05/01 18:13
扯点废话,我们使用draftjs来进行文本编辑是很不错的,但是如果只是单纯的显示的时候,用draftjs设置只读也是可以的,总有点杀鸡用牛刀的感觉。这时候可以把state转成html,应用场景比如在pc端后台管理,想在手机端显示就比较实用了。
介绍这个工具https://github.com/sstur/draft-js-export-html,用法直接看文档就行。
就我使用的情况总结几点:
当只使用draft内置的样式的时候可以完美转换,当使用了上节所提到的自定义样式,内联和块级的时候,就可以要使用一些options,有点不知道该不该吐槽,Editor配置项中的内联样式之类的和渲染函数都不能直接用,都得改写下,因为stateToHTML
的使用的值有两个属性,style和attributes,style直接写样式就好了,attributes用来使用class,那就重新写个css文件专门给转换后的html使用了。
以上篇的为例,我们想把样式加入转换后的HTML可以如下,这样省的添加外部css文件。
let options = { inlineStyles: { CODE: { style: { backgroundColor: 'rgba(0, 0, 0, 0.05)', fontFamily: '"Inconsolata", "Menlo", "Consolas", monospace', fontSize: 16, padding: 2, } }, '36px': { style: { fontSize: 36 } }, }, blockStyleFn: (block) => { switch (block.getType()) { case 'blockquote': return { style: { 'border-left': '5px solid #eee', color: '#666', 'font-family': "'Hoefler Text', 'Georgia', serif", 'font-style': 'italic', 'margin': '16px 0', 'padding': '10px 20px' } }; case 'left': return { style: { 'text-align': 'left' } }; case 'center': return { style: { 'text-align': 'center' } }; case 'right': return { style: { 'text-align': 'right' } }; case 'suibian': return { style: { color: 'indianred' } }; default: return null; } }, }; let html = stateToHTML(content, options);
可以根据实际情况来选择是外部样式文件配置attributes class或者直接像这样配置style
0 0
- 7.Draftjs 学习笔记-StateToHtml
- 1.Draftjs 学习笔记
- 3.Draftjs 学习笔记-Entities
- 4.Draftjs 学习笔记-Decorators
- 2.Draftjs 学习笔记-Rich Styling
- 5.Draftjs 学习笔记-自定义控件(多媒体)
- Draftjs 输出结果 转换回html(converToHtml)
- WPF 学习笔记 - 7. Resource
- WPF 学习笔记 - 7. Resource
- 7. 异常处理 --- 学习笔记
- 7.【SELinux学习笔记】约束
- 学习笔记?
- 学习笔记
- 学习笔记
- 学习笔记
- 学习笔记
- 学习笔记
- 学习笔记
- keil中的printf函数显示结果
- 递归算法---全排列
- Android Activity生命周期--应知应会
- slua 1.3.1 vs2017 build file
- 记录下 刚开的博客
- 7.Draftjs 学习笔记-StateToHtml
- (java)leetcode-22
- JMeter proxy server
- Java学习笔记3--类与对象
- 特征选择
- Problem--131A--Codeforces--A. cAPS lOCK
- 【Java学习笔记】03.运算符与键盘录入数据操作
- 结对编程(四则运算)
- RANSAC介绍