TinyMCE MS MVC ищет файл без минимизации
У меня есть развертывание MS MVC, которое ищет индекс для TinyMCE "theme.js" и не находит его, потому что файл theme.min.js. Как заставить MVC искать минимизированный файл?
Файл tinymce - это tinyMCE.min.js, так что он его находит. Это проблема с настройкой TinyMCE или MS MVC?
Длинное объяснение: мы находимся в процессе внедрения TinyMCE на странице Microsoft MVC. Он работал локально, но не запускался при развертывании на сервере. Ошибка 404, файл не найден для файла: PROJECT_ROOT/bundles/themes/modern/theme.js
Это не было расположение файла темы, который он искал, и после небольшого исследования я обнаружил, что вам нужно установить свойство tinymce.baseURL. Когда я сделал это, это немного помогло, изменив местоположение в ошибке на фактическое местоположение файла: PROJECT_ROOT/Scripts/libs/tinymce/themes/modern/theme.js
Проблема в том, что по какой-то причине он искал не минимизированный файл theme.js, а не theme.min.js. Если я изменю название на theme.js, это сработает.
Я думал, что MVC и / или TinyMCE сделают магию, чтобы получить правильное имя. Есть ли настройка, которую мне нужно изменить?
2 ответа
Вам нужно установить tinymce.suffix = '.min'; прежде чем начать TinyMCE
tinymce.suffix = '.min';
tinymce.baseURL = '/js/tinymce';
tinymce.init({
selector: '#editor',
menubar: false,
plugins: 'code'
});
TinyMCE должен работать для загрузки минимизированных (или не минимизированных) файлов, в зависимости от того, какой файл TinyMCE вы загружаете (tinymce.js
или же tinymce.min.js
).
Не уверен, что происходит в вашем случае, но эта логика не работает.
Если вы извлечете пакет DEV из https://www.tiny.cloud/get-tiny/self-hosted/ он будет содержать как минимизированные, так и не минимизированные версии каждого файла, чтобы редактор мог найти то, что ему нужно во время выполнения.,
Примечание. Код в минимизированных и неминифицированных файлах работает одинаково, поэтому с точки зрения функциональности не имеет значения, theme.min.js
или жеtheme.js
Код загружен. Это только добавляет ~200K к размеру файла, так что даже это не имеет значения.
Я думаю, что нашел решение для этого. Есть свойство, которое вы можете установить в объекте tinymce под названием "суффикс", которое разрешило это для меня.
Итак, для первой части я установил свойство rootURL на странице, вызывающей TinyMCE, а затем добавил строку tinymce.baseURL = rootURL + 'Scripts/libs/tinymce' непосредственно перед tinymce.init.
Затем, чтобы получить его, чтобы найти theme.min.js, установите tinymce.suffix = '.min'
Это, похоже, решило проблему. Не уверен, что это решение для взлома, но оно работает. Если у кого-то есть лучший способ сделать это, пожалуйста, дайте мне знать.