EasyAdmin 代码编辑器字段
此字段创建一个基于 JavaScript 的编辑器,用于基于 CodeMirror 编辑器读取和编写源代码。
在表单页面(编辑和新建)中,它看起来像这样

提示
EasyAdmin 为长文本内容提供了其他字段:TextAreaField 非常适合不需要任何格式的长内容;TextEditorField 非常适合编辑具有丰富格式的长文本内容。
基本信息
- PHP 类:
EasyCorp
\Bundle \EasyAdminBundle \Field \CodeEditorField - Doctrine DBAL 类型 用于存储此值:
text
- Symfony 表单类型 用于渲染此字段: CodeEditorType,它基于 Symfony 的 TextareaType
渲染为:
1 2
<!-- when loading the page this is transformed into a code editor via JavaScript --> <textarea> ... </textarea>
选项
setIndentWithTabs
默认情况下,代码使用 4 个空格缩进。使用此选项可以使用制表符缩进代码
1
yield CodeEditorField('...')->setIndentWithTabs();
setLanguage
默认情况下,代码会针对 Markdown 内容进行高亮显示。如果您正在编辑以其他编程语言编写的内容,请使用此选项
yield CodeEditorField('...')->setLanguage('php');
传递给此方法的参数必须是以下值之一:css
, dockerfile
, js
, markdown
, nginx
, php
, shell
, sql
, twig
, xml
, yaml-frontmatter
, yaml
。
setNumOfRows
表单页面(new
和 edit
)中使用的编辑器的高度会根据显示其内容的需求而变化。此高度也会动态增长 (通过 JavaScript) 以始终匹配其内容的行数。
此选项设置字段内容为空时显示的行数。默认情况下,初始高度较小,因此当预期内容更长时,增加此值是一个好主意
1
yield CodeEditorField::new('...')->setNumOfRows(30);
本作品,包括代码示例,根据 Creative Commons BY-SA 3.0 许可协议获得许可。