- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在学习 draft.js 编辑器,找不到如何配置默认字体系列和字体大小。
我这样试过:
let editorState = EditorState.createEmpty();
let newState = RichUtils.toggleBlockType(
editorState,
'aligncenter'
);
newState = RichUtils.toggleInlineStyle(
newState,
'FONT_SIZE_36'
);
newState = RichUtils.toggleInlineStyle(
newState,
'TIMES_NEW_ROMAN'
);
奇怪的是,aligncenter 样式工作正常,但是当组件获得焦点时,font size 和 family 消失了。
你能建议正确的方法吗?
最佳答案
使用 RichUtils.toggleInlineStyle()
用于修改当前选定的文本范围(或设置将在当前光标位置输入的文本的内联样式)。没有办法使用它来设置整个文档的默认内联样式(也不推荐这样做)。
要获得默认样式,您应该使用 CSS 并为整个编辑器设置您想要的样式。然后,当用户需要非默认样式(例如从下拉列表中选择字体大小)时,您应该使用 toggleInlineStyle
为特定文本范围覆盖这些样式。
这里是陷阱。目前,您可以使用 styleMap
预定义这些内联样式,但您无法在用户选择任意字体系列(或大小或颜色)时真正即时创建它们。
在尝试为 react-rte.org 实现颜色选择器时,我也一直在努力解决这个问题.
(从技术上讲,您可以动态添加样式,但它不会触发重新渲染,因此这不是真正可用的。)
这里有一个 Unresolved 问题: https://github.com/facebook/draft-js/issues/52
我希望这会在一周左右的时间内得到解决,我可以使用示例代码编辑此答案以完成您想要的。
关于javascript - 如何在 draft.js 中设置默认字体系列和大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36243393/
在 Gmail API 中,drafts.list 经常会返回草稿 ID但是当我将它传递给 drafts.get 时,它会返回 404 错误。这是对于某些草稿 ID 可重复,我可以再次调用 draft
我正在尝试将调用组件中的文本更新到编辑器组件中。我使用 props 来传递来自调用者的文本,但是当文本更改时(在 ContentEditor 中更新了 props),Editor 组件中的文本不是:
我正在使用 MFMailComposeViewController Controller ,如下所示: MFMailComposeViewController *picker1 = [[MFMailC
如果我想处理字符*的输入,我可以使用handleBeforeInput(str): handleBeforeInput(str) { if (str !== '*') { retu
使用下面的代码我得到纯文本但我想要格式化文本点击按钮 {alert(this.state.editorState.getCurrentContent().getPlainText());}} typ
如何添加链接?我知道如何添加链接到 选择 const contentState = editorState.getCurrentContent();
我的draft.js 填充 body带有文本,例如:'{"blocks":[{"key":"3mont","text":"lorem ipsum","type":"unstyled","depth":
我在我的应用程序中使用基于草稿js的react-draft-wysiwyg文本编辑器。我在尝试通过编辑器图像控件上传图像时遇到一些问题。我正在使用自定义 FileUploader 组件。它将图像保存在
我有一个由 Draft.js 提供的编辑器的包装器,我想让 tab/shift-tab 键像它们应该用于 UL 和 OL 一样工作。我定义了以下方法: _onChange(editorState)
我关注了draft-js document创建一个非常简单的 Draft-js 演示。 一切似乎都运行良好,但是当我在 Chrome 中打开网址时,我只能看到一个白色的空白页面(那里有一个隐藏的编辑器
如何测试draftjs的内容编辑器为空? 我现在唯一的想法是与从此函数返回的对象进行对象比较:EditorState.createEmpty().getCurrentContent() 最佳答案 只需
我有一个简单的用例:有一个 DraftEditor 组件,它采用 value作为它的 Prop 并基于value创建一个编辑器状态(空的或有内容的)。 value 可能被父级更改,当它发生时,我希望草
我尝试根据主 draft.js 页面上的示例创建基本草稿 js 编辑器 https://draftjs.org/ . 当我在主页面的编辑器中单击切换了 ol/ul 的选项卡时,我得到了嵌套列表。但是在
我有一个需要多个文本输入的应用程序,为了格式化和自定义,我选择了 draft-js 作为我的编辑器,但是我遇到了一个非常令人困惑的输入问题。 当我在编辑器中输入时,我最近按下的键被打印在编辑器的开头,
问题是:如何将 draft-js 内容保存为 html,然后在页面上呈现内容(此时是 html 字符串)。 我想分享我学到的东西。 请在解决方案中找到一种使用 draft.js 保存和呈现内容的方法。
我正在做一个 React 项目,我们将在其中使用大量表单,包括具有丰富 HTML 的字段。我搜索了一会儿,偶然发现了 draft-js。看起来很好,但是我似乎找不到任何从头到尾如何使用它的好例子。我发
如何确保我的 UI 上唯一的 draft-js 文本框在页面加载时自动聚焦? 有一个记录的方法叫做 focus ,但是我不确定实现所需的语法。 最佳答案 如果您的编辑器是用一些默认值启动的,那么只需执
试图学习如何在我自己的应用程序中使用 DraftJS React 组件,但我遇到了一个大问题。我已经按照位于 here. 的示例进行操作 我使用 create-react-app 获取基础样板文件,我
我在一个项目中将 Draft JS 作为一个简单的编辑器实现了,但是我在设置无序列表的样式时遇到了问题,特别是更改项目符号的颜色以匹配文本颜色。 文档中似乎没有关于如何将样式应用于包装 unorder
我正在尝试将 Draft.js 与图像插件一起使用。这是我的问题。我设法让它工作,但没有加载样式,编辑器占据了整个页面,按钮没有样式。 我从提供的 CSS 加载样式 import './Draft.c
我是一名优秀的程序员,十分优秀!