我从以下来源使用@ types / ckeditor遇到了一些问题。
https://www.npmjs.com/package/@types/ckeditor
我已经很好地安装了软件包,然后将类型导入到相关文件中,并且在VS代码中均为绿色。
import "CKEDITOR";
import { Injectable } from '@angular/core';
export interface IEditor {
editor: CKEDITOR.editor
addEventHandler(eventName: string, onEvent: Function): void;
addContextMenuItem(menulabel: string, onEvent: Function): void;
getTrackingPlugin(): any;
}
@Injectable({
providedIn: 'root'
})
export class Editor implements IEditor {
public editor: CKEDITOR.editor
constructor(rootElement: HTMLElement, config: CKEDITOR.config) {
this.editor = CKEDITOR.inline(rootElement, config);
}
}
那很好,但是当我进行构建时,出现以下错误。
ERROR in ./src/app/modules/single-editor/services/editor.service.ts
Module not found: Error: Can't resolve 'CKEDITOR' in 'C:\Code\***\src\web\src\app\modules\single-editor\services'
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! web@0.0.0 build: `ng build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the web@0.0.0 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\***\AppData\Roaming\npm-cache\_logs\2019-05-07T10_31_08_926Z-debug.log
The terminal process terminated with exit code: 1
Terminal will be reused by tasks, press any key to close it.
此代码位于其自己的模块中,我使用的是最新版本的Angular,并且我使用的是ckeditor 4。
答案 0 :(得分:0)
我相信我已经找到了答案。我需要包括以下内容。
/// <reference types="@types/ckeditor" />
我之前曾尝试过此方法,但是它没有用,尽管我做错了关键的事情是不要在文件的开头中加入它,但这很重要。