Конфликт всплывающей подсказки Jquery с Bootstraps в контексте использования RequireJS

Это известная проблема со ссылками здесь: Jquery и Bootstrap имеют конфликт имен для tooltip()

Решение, которое многие предложили, состоит в том, чтобы использовать $.widget.bridge перед загрузкой Bootstrap. Но в моем случае я не знаю, как этого добиться, используя стиль requireJS:

Мой импорт скрипта выглядит так:

define(['jquery', 'jquery-ui', 'knockout', 'bootsrap'],

person Loredra L    schedule 23.01.2017    source источник


Ответы (1)


Ну, это старый вопрос без ответа. Поскольку я наткнулся на это, когда у меня была такая же проблема, вот как я ее решил:

require.config({
  shim: {
    'bootstrap': {
      deps: ['jquery', 'jquery-ui'],
      callback: function($) {
        $.widget.bridge('uitooltip', $.ui.tooltip);
      }
    }
  }
});

Это заставляет requireJS загружать пользовательский интерфейс jQuery и реализовывать мост до загрузки начальной загрузки.

Это можно считать грязным обходным путем. Однако, поскольку этот фрагмент кода настраивает загрузку различных зависимостей и разрешает конфликт между двумя зависимостями, я думаю, что это хорошее место для этой строки кода.

person Tekay37    schedule 05.07.2021