2017-01-27 16 views
0

У меня есть большой проект с использованием CKEditor, который построен с использованием оптимизатора requirejs (http://requirejs.org/docs/optimization.html), чтобы объединить все javascript в один .js-файл. Отдельные модули, такие как jquery и ckeditor и другие, «требуются» при использовании requirejs.Как использовать Ckeditor с requirejs и оптимизатором r.js

Все работает отлично, за исключением ckeditor. Прямо сейчас я должен «исключить» ckeditor из одного объединенного файла .js («exclude» - это опция для оптимизатора requirejs).

Моих требуют конфигурации выглядит следующим образом:

requirejs.config({ 
    'baseUrl': '/myapp/', 
    paths: { 
    'scs-core-libs': '../../core/src/libs', 

    'knockout': '../../core/src/libs/knockout/dist/knockout', 
    'jquery': '../../core/src/libs/jquery/dist/jquery.min', 
    'jquery-ui': '../../core/src/libs/jquery-ui/ui', 
    'ckeditor': '../../core/src/libs/ckeditor/ckeditor' 
    ... 
    } 
    ... 
}); 

Я должен исключить CKEditor из оптимизатора, потому что в противном случае CKEditor не в состоянии найти мой плагины, мои языковые файлы, или даже основную конфигурацию. js-файл.

var requireJsOptimizerConfig = { 
    baseUrl: './src', 
    exclude: [ 
    'scs-core-libs/ckeditor/ckeditor' 
    ], 
    ... 
} 

Я пробовал CKBuilder, но это не помогло. Является ли CKEditor неудобным с оптимизатором requirejs? Кто-нибудь смог собрать все CKEditor в один файл приложения .js?

В принципе, я хочу убрать эту строку 'exclude'.

ответ

1

Вы должны установить CKEDITOR_BASEPATH как глобальную переменную где-нибудь прежде, чем вам понадобится редактор.

var CKEDITOR_BASEPATH = '/path/to/your/installation/of/ckeditor/'; 

http://docs.ckeditor.com/#!/guide/dev_basepath

+0

вы спасатель. Я почти отказался от использования ckeditor с require.js – Andi