学习requirejs我觉得刚开始的时候,我自己越学越晕。而且,总感觉实践出来的东西和教程上的不一致,让我一度怀疑这个教程是不是有问题。
现在,我总觉自己在学习requirejs时,遇到的几个槛。
1、要分清requirejs使用require时的根路径在哪里。我把所有的情况罗列了以下:
- 当requirejs只是被包含在html页面中时,且没用增加data-main设置,如下所示。
<script type="text/javascript" src="xx/require.js"></script>
那么此时,当你用require来加载js文件时。此时的根路径是加载requirejs的html文件所在的目录。
- 包含data-main属性时,写法如下
<script type="text/javascript" data-main="xx/require-config" src="xx/require.js"></script>
此时用require加载js文件时,所指的路径是require-config这个配置文件所在的目录。
- 既指定了data-main属性,又在data-main指向的配置文件中配置了baseUrl,那么在paths配置的文件路径都是以baseUrl路径为根目录。
此时baseUrl的起始目录为html页面所在的目录
配置文件如下:
require.config({
baseUrl: "xx/xx",
paths: {
}
})
列表内容
另外一个比较特殊的方式加载js文件。当以以下三种方式来加载js文件时,加载的路径将绕过上述的这些配置。这三种方式包括:
- 以/开头的路径。
- 以.js结尾的路径
- 以协议http或https开头的路径