在具有 contenteditable 的 div 中添加 formControlName
Add formControlName in a div with contenteditable
我有一个带有 contenteditable="true" 的 div,因为我需要一个富文本组件,我尝试了很多库但没有任何效果,所以我的 div 可编辑但是当我尝试添加 formControlName 我得到了这个错误:
这是我的HTML
<div formControlName="main_description" class="full" id="textBox" contenteditable="true"></div>
这就是错误
ERROR Error: No value accessor for form control with name: 'main_description'
at _throwError (forms.js:1734:1)
at setUpControl (forms.js:1508:1)
at FormGroupDirective.addControl (forms.js:5255:1)
at FormControlName._setUpControl (forms.js:5837:1)
at FormControlName.ngOnChanges (forms.js:5782:1)
at FormControlName.rememberChangeHistoryAndInvokeOnChangesHook (core.js:1520:1)
at callHook (core.js:2539:1)
at callHooks (core.js:2506:1)
at executeInitAndCheckHooks (core.js:2457:1)
at selectIndexInternal (core.js:8401:1)
是的,需要实现控件值访问器,它基本上是一个接口 angular 提供用于创建自定义表单控件。您收到的错误是因为指令 formControlName 期望您尝试绑定的元素是实现此接口的自定义元素。
基本查到这里的资源:ControlValueAccessor
此外,这应该对您有所帮助:Implementing ControlValueAccessor
我得到了解决方案!
我必须添加一个不可见的输入来分配 div 数据
我有一个带有 contenteditable="true" 的 div,因为我需要一个富文本组件,我尝试了很多库但没有任何效果,所以我的 div 可编辑但是当我尝试添加 formControlName 我得到了这个错误:
这是我的HTML
<div formControlName="main_description" class="full" id="textBox" contenteditable="true"></div>
这就是错误
ERROR Error: No value accessor for form control with name: 'main_description'
at _throwError (forms.js:1734:1)
at setUpControl (forms.js:1508:1)
at FormGroupDirective.addControl (forms.js:5255:1)
at FormControlName._setUpControl (forms.js:5837:1)
at FormControlName.ngOnChanges (forms.js:5782:1)
at FormControlName.rememberChangeHistoryAndInvokeOnChangesHook (core.js:1520:1)
at callHook (core.js:2539:1)
at callHooks (core.js:2506:1)
at executeInitAndCheckHooks (core.js:2457:1)
at selectIndexInternal (core.js:8401:1)
是的,需要实现控件值访问器,它基本上是一个接口 angular 提供用于创建自定义表单控件。您收到的错误是因为指令 formControlName 期望您尝试绑定的元素是实现此接口的自定义元素。
基本查到这里的资源:ControlValueAccessor
此外,这应该对您有所帮助:Implementing ControlValueAccessor
我得到了解决方案! 我必须添加一个不可见的输入来分配 div 数据