Я пытаюсь использовать http://bootboxjs.com/examples.html#bb-приглашение в своем проекте, поэтому, естественно, я начал с их примера кода, чтобы проверить, работает ли он.
Согласно документации; Я использую последнюю версию bootstrap, jquery и bootstrap js, а затем загружаю bootboxjs. Это код, который я пытаюсь запустить:
bootbox.prompt({
title: "This is a prompt with a set of radio inputs!",
message: '<p>Please select an option below:</p>',
inputType: 'radio',
inputOptions: [
{
text: 'Choice One',
value: '1',
},
{
text: 'Choice Two',
value: '2',
},
{
text: 'Choice Three',
value: '3',
}
],
callback: function (result) {
console.info(result);
}
});
Когда этот код выполняется; Я получаю эту ошибку:
Uncaught Error: invalid prompt type
Это довольно милая библиотека, и я хотел бы использовать ее в своем проекте; но я немного в тупике. Любые идеи?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Я решил проблему. Сначала я использовал только bootbox.min.js, но оказалось, что мне нужно использовать и bootbox.locales.min.js. Я должен был rtfm ...
Кроме того, я использую веб-пакет (через laravel-mix) для объединения всех библиотек в один файл .js, поэтому использование bootbox.all.min.js (производственная сборка с локалями) в качестве последней загрузки, похоже, также помогло.
Это мой файл конфигурации webpack.mix.js, который работает для меня:
const mix = require('laravel-mix');
mix
.copyDirectory('resources/libs/font-awesome/fonts', 'public/fonts')
.styles(
[
// snipped...
],
'public/css/app.css'
)
.scripts(
[
'resources/libs/jquery/jquery-3.4.1.min.js',
'resources/libs/bootstrap/bootstrap.bundle.min.js',
// bunch of other js libs...
'resources/libs/bootbox/bootbox.all.min.js',
],
'public/js/app.js'
);
Я думаю, что ваша первоначальная проблема могла быть в том, что вы загружали версию 4.4 - я добавил радио в качестве типа ввода, когда делал обновления для версии 5.x. Вы загружались с CDN?
Эй, спасибо, что вернулся ко мне. Я скачал его с cdnjs.com и собрал вместе с помощью веб-пакета в соответствии с моим ответом/примером.
Да, и, к сожалению, cdnjs устарел - мне не удалось получить успешный запрос на включение из-за некоторых различий в репо. Похоже, мне нужно будет сделать некоторые реверсии, если я хочу, чтобы все работало, как задумано.
Сопровождающий, вот - Да, извините, мне было интересно, стоит ли вытаскивать локали в отдельный файл - идея заключалась в том, чтобы сэкономить несколько байтов, не включая все локали, поскольку маловероятно, что кто-то использует более одного или два в любом заданном проекте. Помимо того, что CDN устарел, проблемы с локалями, по-видимому, являются наиболее распространенной проблемой с тех пор, как я внес это изменение. Если вы хотите поднять вопрос о проекте Github, я бы рассмотрел его.