“ ERROR TypeError:this.onChange不是函数”的原因是什么?

时间:2020-02-27 16:22:46

标签: angular ckeditor

我的代码是here

请告诉我浏览器返回以下错误消息:

ERROR TypeError: this.onChange is not a function
at RichTextEditorComponent.forwardEvent (rich-text-editor.component.ts:39)
at Object.eval [as handleEvent] (RichTextEditorComponent.html:6)

我试图将“ this”对象打印到控制台,它仅返回“ RichTextEditorComponent”对象。

2 个答案:

答案 0 :(得分:1)

虽然onChange的类型是一个函数,但是我看不到实际设置该值的任何东西,但是它是未定义的(因此不是函数)。

rich-text-editor.component.ts中:

onChange: (value:any) => {};

// and

registerOnChange(fn: any) {
  this.onChange = fn;
}

什么都没有调用registerOnChange来设置onChange的值。

答案 1 :(得分:0)

RichTextEditorComponent内部存在一个问题,即您声明onChangeonTouched的类型为function,而没有真正分配它们的实际功能。

onChange: (value:any) => {};
onTouched: () => {};

应将其重写如下(使用=

onChange = (value:any) => {};
onTouched = () => {};