Почему SummerNote не может найти jquery, уже включенный в gwtbootstrap3

Основной вопрос: включает ли gwtbootstrap3 jquery (я полагаю, см. ниже). И если так, то почему я не могу сделать ссылку на это? Я нашел этот ответ здесь, но я все еще не уверен, как поступить.

Я добавил Summernote в свой проект GWTBootstrap3. Затем я добавил следующие ссылки на свою HTML-страницу, как указано на summernote.org. Это работает отлично. Хотя я хочу убедиться, что в моем проекте есть только необходимые ссылки или ссылки.

<!--  Summernote required includes BEGIN-->
<!-- include libraries(jQuery, bootstrap) -->
<link 
href="http://netdna.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.css" 
rel="stylesheet"> 
<script src="http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.js">
</script> 
<script 
src="http://netdna.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.js">
</script>

<!-- include summernote css/js-->
<link 
href="http://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.3/summernote.css" 
rel="stylesheet">
<script 
src="http://cdnjs.cloudflare.com/ajax/libs/summernote/0.8.3/summernote.js">
</script>
<!--  Summernote required includes END-->

Как я понимаю, gwtbootstrap3 уже использует jquery. Поэтому я решил закомментировать плагин jquery. Проблема в том, что Summernote завершается ошибкой со следующей ошибкой в ​​веб-консоли моего браузера Chrome:

Uncaught TypeError: Невозможно прочитать свойство 'fn' из неопределенного

at summernote.js:460
at summernote.js:21
at summernote.js:23

Совершенно очевидно, что это относится к отсутствующему jquery (как строка 460 относится к...)

isWebkit: !isEdge && /webkit/i.test(userAgent),
isChrome: !isEdge && /chrome/i.test(userAgent),
isSafari: !isEdge && /safari/i.test(userAgent),
browserVersion: browserVersion,
jqueryVersion: parseFloat($.fn.jquery), <!-- LINE 460 !!! -->
isSupportAmd: isSupportAmd,
hasCodeMirror: hasCodeMirror,
isFontInstalled: isFontInstalled,
isW3CRangeSupport: !!document.createRange

Таким образом, все сводится к вопросу, почему summernote не может ссылаться на jquery, уже включенный в комплект gwtbootstrap3? Какая разница в использовании NoRessource и включении всех необходимых файлов вручную? Это решило бы проблему? Какие файлы необходимо будет включить вручную и как / где я должен их включить?

С наилучшими пожеланиями Ханнес

1 ответ

Причина, по которой я импортировал ссылки, перечисленные выше, заключалась в том, что когда я начал работать с summernote в gwtbootstrap3, он не работал. то есть это не показывалось бы вообще. Но причина была не в том, что мне нужно было импортировать ссылки, упомянутые выше. Вероятно, это была какая-то другая ошибка, которую я совершил (или какая-то проблема с затмением). Короче говоря. Нет необходимости импортировать ссылки, перечисленные на summernote.org. Зачем? Потому что они уже включены в gwtbootstrap3-extras для summernote. Поэтому, если быть точным, импортировать эти ссылки довольно вредно, потому что у вас могут возникнуть странные проблемы, когда запущены два отдельных экземпляра jquery. Так что ответ есть. НЕ ИМПОРТИРУЙТЕ ЭТО, и все в порядке.

Другие вопросы по тегам