Ошибка ссылки: импорт jQuery в переключателе начальной загрузки при использовании машинописи - PullRequest
0 голосов
/ 15 марта 2019

Я использую машинописный модуль AMD.

В моем app.ts я получил следующие импорта:

import $ from 'jquery';
import 'popper.js';
import 'bootstrap';
//import 'bootstrap-toggle';

Мой код получил функции jQuery, bootstrap и bootstrap-toggle. Если я закомментировал библиотеку переключателей начальной загрузки, как показано в верхнем коде, мое приложение работает нормально и не выдает ошибок.

Но без моей библиотеки начальной загрузки я не могу использовать свои функции этой библиотеки.

Если я рекомендую его, я получаю следующую ошибку:

ReferenceError: jQuery не определен (в bootstrap-toggle.js)

Мой файл bootstrap-toggle.js также использует jQuery с этой функцией:

function ($) {
...
}(jQuery);

Думаю, проблема в том, что я включаю свой jQuery только для моего app.js , а не в мой bootstrap-toggle.js

Но как я могу определить импорт глобально? Я не буду импортировать jQuery таким образом в мой файл bootstrap-toggle.js, потому что это инструмент из здесь и не написан моим.

Заранее спасибо.

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

Sony

1 Ответ

0 голосов
/ 19 марта 2019

Я нашел свое решение. В модуле AMD для машинописного текста требуется JS, поэтому он должен настроить файл конфигурации JS, например:

requirejs.config({
    baseUrl: '',
    paths: { 
        app: 'app',
        jquery: 'jquery'
    },
    shim: {
        "bootstrap-toggle" : ["jquery"]
    }
});

Если jQuery должен быть доступен для переключения при начальной загрузке, для него требуется опция shim в конфигурации config.

...