Неожиданный экспорт токена в popper.js при связывании указывает, что для библиотеки Popper требуется UMD-версия сборки соответствующего JS-файла, который здесь неправильно задан (возможно, вы используете версию ESNext):
@Scripts.Render("~/Scripts/popper.js")
Импорт версии UMD необходим, поскольку мы хотим импортировать его с тегом <script>
, созданным механизмом связывания (System.Web.Optimization
), как написано на официальной странице .
Если вы хотите импортировать его с тегом <script>
, используйте UMD.
Вот эти шаги для использования версии UMD с комплектацией MVC:
1) Получить версию UMD из пакета dist можно здесь: https://unpkg.com/popper.js@1.14.4/dist/umd/
2) Сохраните пакет UMD в папке /Scripts/umd
.
3) Создайте JS-пакетыв методе RegisterBundles()
с указанными путями, как в примере ниже:
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-*",
// other jQuery scripts here
));
bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include(
"~/Scripts/umd/popper.js", // set to UMD version
"~/Scripts/bootstrap.js",
"~/Scripts/bootbox.js",
"~/Scripts/respond.js",
// other Bootstrap scripts here
));
4) Используйте @Scripts.Render()
помощник на странице макета, чтобы включить их (обратите внимание, что порядок сценариев имеет значение):
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
Примечание: Если вы ищете ESNext версию Popper.js по сравнению с UMD-версией , вы увидите этот заголовок в последнем, который не существует впрежний:
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global.Popper = factory());
}(this, (function () {
// skipped for brevity
})));
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * [10] * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}}}} оно не относится к глобальной области;Похоже, файлы CSS не включены должным образом.Обратитесь к разделу Связывание и минификация для импорта CSS-пакетов.
Связанные проблемы:
Как использовать Popper.js с Bootstrap 4 beta
popper.js в начальной загрузке 4 дает SyntaxError Неожиданный экспорт токена