我在项目中使用tinymce,并安装了@types/tinymce
。但是,在调用tinymce.init()
并传递Settings
对象时,@types/tinymce
的{{1}}中缺少某些属性,并且出现错误:
呼叫代码:
index.d.ts
错误消息:
tinymce.init({
selector: "#editor",
height: 400,
plugins: "paste",
element_format: "html",
paste_block_drop: true,
[...]
}
Argument of type '{ selector: string; height: number; menubar: string; toolbar: string; plugins: string; element_format: string; paste_data_images: true; paste_block_drop: boolean; paste_enable_default_filters: boolean; paste_remove_styles: boolean; paste_retain_style_properties: string; setup: (editor: Editor) => void; }' is not assignable to parameter of type 'Settings'.
Object literal may only specify known properties, and 'paste_block_drop' does not exist in type 'Settings'.
中的定义如下:
index.d.ts
我搜索并阅读了几个StackOverflow答案,并阅读了Typescript docs ,并试图创建一个具有以下内容的文件export interface Settings {
base_url?: string;
table_toolbar?: string;
[...]
}
:
tinymce-extensions.d.ts
但是它不起作用,我仍然收到上述错误消息。 我在做什么错了?
答案 0 :(得分:1)
我尝试了几种方法,但是它们没有用。我不确定,但是我感觉有些东西坏了。
因此,如果您不能提交此lib并仍然希望拥有类型,则可以使用这种简单但非常难看的方法:
tinymce.init({
selector: "#editor",
height: 400,
plugins: "paste",
element_format: "html",
paste_block_drop: true,
} as Settings)