Получение bootstrap-multiselect для работы с Angular 2+ - PullRequest
0 голосов
/ 05 сентября 2018

Не удается загрузить bootstrap-multiselect (http://davidstutz.de/bootstrap-multiselect) для работы с Angular2 +. Насколько я вижу, все установлено правильно:

packages.json:

"dependencies": {
  (...)
  "bootstrap": "^4.1.3",
  "bootstrap-multiselect": "^0.9.13-1",
  "jquery": "^3.3.1",
}

angular.json:

"styles": [
  "./node_modules/bootstrap/scss/bootstrap.scss",
  "./node_modules/bootstrap-multiselect/dist/css/bootstrap-multiselect.css",
  "src/styles.css"
],
"scripts": [
  "./node_modules/jquery/dist/jquery.js",
  "./node_modules/bootstrap/dist/js/bootstrap.js",
  "./node_modules/bootstrap-multiselect/dist/js/bootstrap-multiselect.js",
]

Но когда я загружаю приложение в браузер, я получаю сообщение об ошибке:

TypeError: $ is undefined
./node_modules/bootstrap-multiselect/dist/js/bootstrap-multiselect.js/<
bootstrap-multiselect.js:1388
./node_modules/bootstrap-multiselect/dist/js/bootstrap-multiselect.js
bootstrap-multiselect.js:44
__webpack_require__
./src/app/tasks/tasks.component.ts
__webpack_require__
./src/app/app.module.ts
__webpack_require__
./src/main.ts
__webpack_require__
[0]
__webpack_require__
checkDeferredModules
webpackJsonpCallback

Я предполагаю, что веб-пакет использует сценарии для создания пакета в неправильном порядке. Он должен поставить jQuery перед bootstrap-multiselect, но вместо этого он ставит его наоборот.

1 Ответ

0 голосов
/ 05 сентября 2018

Это действительно может быть проблема с веб-пакетом. По моему опыту всегда проще использовать упаковку, которая была упакована таким образом, чтобы она была готова к использованию под углом.

Существует пакет под названием angular2dropdown-multiselect .

Будет ли для вас вариант использовать этот пакет, или bootstrap-multiselect является жестким требованием для вашего варианта использования?

...