Ron*_*Ron 2 javascript internationalization ckeditor
我正在使用最新版本(4.7.0)的ckeditor.
我通过安装它npm,它位于常规前端内(没有花哨的 js 框架)。
问题:翻译 js 文件 - 我的情况是“de.js”是从错误的 URL 加载的。
当我检查代码时,我在代码中看到以下内容:
CKEDITOR.scriptLoader.load(CKEDITOR.getUrl("lang/"+a+".js"),f,this)
Run Code Online (Sandbox Code Playgroud)
它仅添加lang/de.js到我当前的网址,而不是转到我的静态文件夹。
我的配置如下:
CKEDITOR.editorConfig = function (config) {
config.toolbar = 'Custom';
config.toolbar_Custom = [
{
name: 'basicstyles', items: ['Bold', 'Italic', 'Underline', 'Strike', 'Styles',
'Format', 'NumberedList', 'BulletedList', 'Undo', 'Redo', 'Image', 'Smiley'],
},
];
config.extraPlugins = 'clipboard,dialog,uploadimage,uploadfile';
config.imageUploadUrl = '/uploader/';
config.uploadUrl = '/uploader/';
};
Run Code Online (Sandbox Code Playgroud)
我尝试添加:
config.baseHref = '/static/ckeditor/';
Run Code Online (Sandbox Code Playgroud)
和
config.path = '/static/ckeditor/';
Run Code Online (Sandbox Code Playgroud)
和
config.basepath = '/static/ckeditor/';
Run Code Online (Sandbox Code Playgroud)
但代码仍然是从相对 URL 加载的。
有谁知道如何正确配置编辑器,使其不会从(错误的)相对路径加载文件?
谢谢
罗恩
更新:
这是我的配置文件,我通过参数添加它customConfig:
CKEDITOR.editorConfig = function( config ) {
config.toolbar = 'Custom';
config.toolbar_Custom = [
{
name: 'basicstyles', items: ['Bold', 'Italic', 'Underline', 'Strike', 'Styles',
'Format', 'NumberedList', 'BulletedList', 'Undo', 'Redo', 'Image', 'Smiley'],
},
];
config.extraPlugins = 'clipboard,dialog,uploadimage,uploadfile';
config.imageUploadUrl = '/uploader/';
config.uploadUrl = '/uploader/';
config.basePath = '/static/ckeditor/';
};
Run Code Online (Sandbox Code Playgroud)
有CKEDITOR.basePath一个定义:
CKEditor 安装目录的完整 URL。
因此,如果设置了此配置选项,CKEditor 加载的文件的路径将基于此。
您还可以使用window.CKEDITOR_BASEPATH(详细说明请参阅此答案):
可以通过设置名为 CKEDITOR_BASEPATH 的全局变量来手动提供基本路径。该全局变量必须在编辑器脚本加载之前设置。
这两个中的任何一个都应该可以解决您的问题,只需使用:
CKEDITOR.basePath = '/static/ckeditor/';
Run Code Online (Sandbox Code Playgroud)
或者
window.CKEDITOR_BASEPATH = '/static/ckeditor/';
Run Code Online (Sandbox Code Playgroud)
当通过任何模块加载器(如 browserify)加载 CKEditor 时,第二个很有用。如果您的情况并非如此,那么第一个选项就足够了。