我目前正在为Drupal 8开发一个自定义模块。 在添加后端表单以从用户那里获取一些数据时,我试图将ckeditor配置为替换我的textareas ...并且失败>。<
这里是表单定义:
$form['text'] = array(
'#type' => 'textarea',
'#title' => t('Text'),
'#required' => TRUE,
'#attributes' => array(
'id' => 'text',
'style' => 'max-width: 650px'
),
'#default_value' => $data['text']
);
我需要在哪里加载ckeditor来替换我的textarea?
我已经尝试过的事情:
$build['#attached'] = array(
'js' => array(
drupal_get_path('module', 'ckeditor') . '/js/ckeditor.js'
drupal_render($build);
和
drupal_load_library("ckeditor", "ckeditor");
但我无法加载所有依赖项
答案 0 :(得分:2)
请参阅具有text_format表单类型的Drupal 8表单API。还建议您检查 #default_value 。
导航至配置>内容创作>文本格式和编辑器为您提供当前可用文本格式的概述。此处列出的内容可用于表单字段的 #format proprty。 (默认回退目前为basic_html
)
尝试将您的代码更改为:
$form['text'] = array(
'#type' => 'text_format',
'#title' => t('Text'),
'#required' => TRUE,
'#default_value' => isset($data['text']) ? $data['text'] : '',
'#format' => 'full_html',
);