RequireJS 文件合并压缩

RequireJS的define 以及require 对于咱们进行简化JavaScript 开发,进行模块化的处理具备很大的帮助javascript

可是请求加载的js 文件会有一些影响,通常的处理是对于文件进行压缩,可是requirejs 的压缩不是简单的css

进行压缩就行。html

RequireJS提供了一个打包压缩工具r.js来对模块进行合并压缩。r.js很是强大,不但能够压缩js,css,甚至java

能够对整个项目进行打包。node

使用的方法为:npm

 

1. 项目结构app

  

文件说明:模块化

model 中的为 定义的模块工具

main.js  为页面加载须要使用的requirejs

appinfo.js  内容为:

define(function () {


    var appinfo = { name: "dalnog", age: 22 };

    return appinfo;


});

refjs.js    内容为:

define(["model/user"], function (user) {


    var myinfo = {

        userinfo: user
    };

    return myinfo;

});

user.js   内容为:

define(function () {


    var user = { name: "dalnog", age: 22 };

    return user;


});

index.htm  页面信息以下:

<!DOCTYPE >
<html  >
<head>
    <title></title>
</head>
<body>


//   压缩的使用方法
  <!--  <script   data-main="dalongappinfo-built" src="Scripts/require.js" type="text/javascript"></script>-->

//   默认的使用方法
    <script   data-main="main" src="Scripts/require.js" type="text/javascript"></script>
</body>
</html>

压缩的方法:

1.  安装node

2.  运行npm 安装 requirejs  自带r.js    

     命令为:  npm   install  -g  requirejs 

3.   配置 命令文件  config.js

       信息为:

       

({

baseUrl: ".",  ///  文件的路径

name: "main",  ///  入口文件  就是main.js

///  实际压缩以后使用的js 文件
out: "dalongappinfo-built.js"

})

4.  运行命令   node   r.js -o  config.js 

    以后生成对应的文件: dalongappinfo-built.js

5. 使用:
     见上面的 index.htm

命令参数解析:

 

下面咱们对命令分别来作一下解释:

-o: 表示优化,该参数是固定的,必选。

baseUrl:指存模块的根目录,可选。

name: 模块的入口文件,这里是app,那么r.js会从baseUrl+name去查找app.js,而后找出全部依赖的模块,而后进行合并与压缩。

out: 指合并压缩后输出的文件路径,这里是直接输出在根目录下build.js 咱们也能够输出到其余目录下 好比js/app 目录下,也能够的。

相关文章
相关标签/搜索