Uncaught Error: Script error for "popper.js", needed by: bootstrap - require.js
程序员文章站
2024-03-31 00:01:33
使用require.js 模块化开发引入bootstrap 4.1.1 时会报错,如上,在网上找到一个解决办法,在配置require.js 时添加map参数,最终解决方案如下: 核心解决方案是: 在require的配置中 map 里加配置 'popper.js': 'popper'。 这是因为在Bo ......
uncaught error: script error for "popper.js", needed by: bootstrap
https://requirejs.org/docs/errors.html#scripterror
at makeerror (require.js:168)
at htmlscriptelement.onscripterror (require.js:1738)
使用require.js 模块化开发引入bootstrap 4.1.1 时会报错,如上,在网上找到一个解决办法,在配置require.js 时添加map参数,最终解决方案如下:
require.config({
baseurl: '/vendors',
paths: {
'jquery': 'jquery/dist/jquery.min',
'bootstrap': 'bootstrap/dist/js/bootstrap',
'popper': 'popper.js/dist/umd/popper.min',
...
},
shim: {
'bootstrap': ['jquery']
},
map: {
'*': {
'popper.js': 'popper'
}
}
});
核心解决方案是:
在require的配置中 map 里加配置 'popper.js': 'popper'。
这是因为在bootstrap里定义的是require('popper.js'), 而不是require标准的require('popper'), 所以要在map里做一个转换以让require.js识别。
以后遇到同类情况也可以用些方案解决。
参考:https://my.oschina.net/justplay/blog/2992283