嗨,老铁,欢迎来到我的博客!

如果觉得我的内容还不错的话,可以关注下我在 segmentfault.com 上的直播。我主要从事 PHP 和 Java 方面的开发,《深入 PHP 内核》作者之一。

[视频直播] PHP 进阶之路 - 亿级 pv 网站架构的技术细节与套路 直播中我将毫无保留的分享我这六年的全部工作经验和踩坑的故事,以及会穿插着一些面试中的 考点难点加分点

周梦康 发表于 2015-09-22 11925 次浏览 标签 : javascript

免费领取阿里云优惠券 我的直播 - 《PHP 进阶之路》

它的使用比较简单,使用其规范来编写即可,参考:http://www.ruanyifeng.com/blog/2012/11/require_js.html

使用 requirejs 就是把各个函数方法都模块化了,如果写完以后不压缩打包,则可能会造成加载各个模块的请求泛滥,页面加载速度巨卡,所以打包是必须的。打包参考官方的:http://requirejs.org/docs/optimization.html

自己打包测试了,如果项目比较大的话,使用起来的确不错。分享下我的操作过程吧,记就记录的全一点:

1.首先我在 nodejs 官网上下载二进制包,然后解压放在了/usr/local/node/下,/usr/local/node/bin/加入到环境变量

2.执行npm install -g requirejs就会在当前目录下生成一个 r.js 文件

3.下面是个项目 demo 了,结构为

├── build.js
├── index.html
├── main.js
├── require.js
├── zmk1.js
├── zmk2.js
└── zmk3.js

zmk1,zmk2,zmk3为三个模块,都在 main.js 里调用了,新建了一个 build.js

({
    baseUrl: ".",
    paths: {
        jquery: "jquery.min"
    },
    name: "main",
    out: "main-built.js"
})

在当前目录执行

node /usr/local/node/bin/r.js -o build.js

就会发现多生成了一个mian-built.js文件如下,在生成环境中就只应用该文件即可

define("zmk1",[],function(){var e=function(e,t){return e+t};return{add:e}}),define("zmk2",["zmk1"],function(e){var t=function(t,n){return e.add(t,n)*2};return{add:t}}),define("zmk3",["zmk1","zmk2"],function(e,t){var n=function(n,r){return e.add(n,r)+t.add(n,r)};return{add:n}}),require.config({paths:{jquery:"jquery.min"}}),require(["zmk1","zmk2","zmk3"],function(e,t,n){console.log(e.add(1,1)),console.log(t.add(1,1)),console.log(n.add(1,1))}),define("main",function(){});

嗨,老铁,欢迎来到我的博客!

如果觉得我的内容还不错的话,可以关注下我在 segmentfault.com 上的直播。我主要从事 PHP 和 Java 方面的开发,《深入 PHP 内核》作者之一。

[视频直播] PHP 进阶之路 - 亿级 pv 网站架构的技术细节与套路 直播中我将毫无保留的分享我这六年的全部工作经验和踩坑的故事,以及会穿插着一些面试中的 考点难点加分点

评论列表