如何在angular5组件而不是HTML中设置TinyMCE-Angular初始化配置?

时间:2018-07-26 09:26:46

标签: angular tinymce angular5

我已经安装了tinymce angular 软件包,可以正常使用:

https://www.npmjs.com/package/@tinymce/tinymce-angular

但是我希望更改组件中的init值,以便我可以从每个环境的配置中加载外观链接等,而不是在html中进行硬编码。

我尝试过:

import tinymce from 'tinymce/tinymce';

并使用:

tinymce.init({
    skins: '/assets/skins'
});

但是,这抱怨执行npm install @ types / tinymce(我已经完成了,但似乎无法识别此软件包)

有人可以暗示我在做什么错吗?该文档不是很好,经过无休止的搜索,我似乎无法在网上找到任何帮助。

注意:我正在将皮肤从/ node_modules / tinymce / skins复制到/ assets / skins,所以我只想一种能够指向该位置以供编辑器加载的方法他们

1 个答案:

答案 0 :(得分:4)

经过进一步调查后,我自己找到了该问题的答案,因此为清楚起见,以防万一其他人正在努力解决类似问题,这是我的解决方法:

我首先按照此处给出的说明进行操作:https://github.com/tinymce/tinymce-angular

(导入模块,并将编辑器添加到component.html文件中)

然后在component.ts中,我设置了baseUrl并更改了init:

import 'tinymce';
declare var tinymce: any;

public ngOnInit (): void {
    this.setupTinyMce();
}

private setupTinyMce (): void {
    tinymce.baseURL = 'assets';
    tinymce.init({
        skin_url: '/skins' // Or loaded from your environments config
    });
}

您还需要将3个文件夹“ plugins”,“ skins”,“ themes”从“ node_modules / tinymce”复制到“ assets”文件夹 (或使用webpack或等效工具为您这样做)