打赏

模块化开发RequireJS之路径解析

1、requirejs遵循AMD规范,将需要的都加载好(前置加载)。注:cmd是就近加载。

define(['jQuery','dialog'],function($,d){
//    业务逻辑
})

(1)AMD采用异步加载,模块的加载不影响它后面语句的执行。

(2)所有依赖这个模块的语句,都定义在一个回调函数中,等前面需要加载的模块加载完成后这个回调函数才运行,解决了依赖性的问题

 

2、requirejs路径解析

代码结构为:

 

 示例代码:

index.html

<!doctype html>
<html lang="en">

    <head>
        <meta charset="UTF-8" />
        <title>Document</title>
    </head>

    <body>
        <!--data-main 是入口文件js/main.js js/main都行-->
        <script src="js/require.js" type="text/javascript" charset="utf-8" data-main="js/main"></script>
    </body>

</html>

main.js为

//配置文件
requirejs.config({
    baseUrl:'js/',//默认是main.js所在的文件夹为基准。
    paths:{
        jquery:'jquery-1.12.4.min'//起个别名
    }
});

//加载入口模块
requirejs(['index']);//从基准路径js下开始查找,谨记不能写为index.js

baseUrl指定了一个目录,然后requirejs基于这个目录来寻找依赖的模块。

baseUrl默认为main.js的路径

 

baseUrl+paths配置路径,如上面的main.js的代码:

jquery的路径为:js/jquery-1.12.4.min


baseURl设置方式有三种

(1)用requirejs.config显示指定baseUrl;

(2)如果指定了Entry Point(data-main)文件,则baseUrl为Entry Point所在目录;

(3)如果上述均未指定,则baseUrl为运行RequireJS的HTML文件所在目录。

posted @ 2017-12-06 16:59  孟繁贵  阅读(369)  评论(0编辑  收藏  举报
TOP