Я собираюсь создать расширение для MediaWiki, в котором я хочу предоставить специальную страницу, которая показывает форму.Для этой формы я хочу использовать Bootstrap, включая jquery и popper.js.Поэтому мне нужно включить js-файлы в расширение.
Обычно файлы стилей и сценариев включаются в extension.json
следующим образом:
"ResourceModules": {
"ext.meForm.custom": {
"position": "top",
"scripts": [
"jquery-3.3.1.slim.min.js",
"popper.min.js",
"bootstrap.min.js",
"ext.meForm.custom.js"
],
"styles": [
"bootstrap.min.css",
"icons.css",
"ext.meForm.custom.css"
]
}
},
И затем их нужно загрузить в специальный метод execution
страницы следующим образом:
$output->addModuleScripts('ext.meForm.custom');
$output->addModuleStyles('ext.meForm.custom');
Когда я включаю только файлы стилей (просто удалите свойство scripts
), тогда стили применяются какожидается.Но когда я добавляю свойство script
, не только скрипты не применяются, но и стили больше не применяются.Похоже, я что-то не так делаю в определении модуля, но я понятия не имею, что.
У кого-нибудь есть подсказки или идеи?
Привет, Якоб
Edit: я забыл упомянуть, что кажется, что он не имеет ничего общего с js-файлами jquery, popper или bootstrap, потому что он ведет себя так же, когда я включаю только ext.meForm.custom.js
, который на самом деле просто пустой jsфайл.
Единственный вывод на консоль, который я получаю - это SyntaxError: expected expression, got '<'
из load.php
в строке 1.
Я использую Mediawiki версии 1.30.1.
Редактировать:Это работает сейчас.Похоже, проблема была в другом расширении, в котором произошла ошибка при загрузке.Я действительно не знаю, как это заставило бы мое расширение не загружать модули должным образом, но это сделало.