JavaScript 从入门到放弃(二)模块化工具requirejs

时间:2021-03-30 13:39:19

入门教程:

1、JS模块化工具requirejs教程(一):初识requirejs

2、JS模块化工具requirejs教程(二):基本知识

描述

这几天在使用github最活跃的基于bootstrap4 写的一个开源项目tabler,发现一个文件require.js老是报错

require.min.js:5 GET https://127.0.0.1/share/index/assets/js/vendors/jquery-3.2.1.min.js net::ERR_ABORTED
require.min.js:5 Uncaught Error: Script error for "jquery"
http://requirejs.org/docs/errors.html#scripterror
at makeError (require.min.js:5)
at HTMLScriptElement.onScriptError (require.min.js:5)
makeError @ require.min.js:5
onScriptError @ require.min.js:5
require.min.js:5 Uncaught Error: Load timeout for modules: core,bootstrap
http://requirejs.org/docs/errors.html#timeout
at makeError (require.min.js:5)
at l (require.min.js:5)
at require.min.js:5

JavaScript 从入门到放弃(二)模块化工具requirejs

很明显这个请求路径不是我们想要的请求路径

错误:https://127.0.0.1/share/index/assets/js/vendors/jquery-3.2.1.min.js

正确:https://127.0.0.1/share/assets/js/vendors/jquery-3.2.1.min.js

为什么会多出一个index路径出来,按照官方来说应该是路径问题

测试环境:TP5.0.17

静态文件目录:

JavaScript 从入门到放弃(二)模块化工具requirejs

修改前的配置文件

require.config({
shim: {
'bootstrap': ['jquery']
},
paths: {
'core': 'assets/js/core',
'jquery': 'assets/js/vendors/jquery-3.2.1.min'
}
});  

修改后的配置文件:

require.config({
shim: {
'bootstrap': ['jquery']
},
paths: {
'core': '/share/assets/js/core',
'jquery': '/share/assets/js/vendors/jquery-3.2.1.min'
}
});