javascript - 关于r.js打包中代码重复打包的一点疑问?
天蓬老师
天蓬老师 2017-04-10 14:39:03
[JavaScript讨论组]

demo目录结构如下:

-demo
- --img
- --css
- --js
- -- -- utils_part1.js
- -- -- utils_part2.js
- -- -- ... ...
- -- -- utils_partN.js
- -- -- func1.js
- -- -- func2.js
- -- -- ... ...
- -- -- funcN.js
- -- -- a.js
- -- -- b.js
- --a.html
- --b.html
- --build.js
- --require.js
- --r.js

a.html引导a.js,b.html引导b.js,其中

a.js: define(['utils_part1',...,'utils_partN','func6'], function(...){...});
b.js: define(['utils_part1',...,'utils_partN','func3','func5','func6'], 

build.js:

({
appDir: './',
baseUrl: 'js',
dir: '../dist',
paths: {
    jquery: 'empty:'
},
modules: [
    {
        name: 'b'
    },
    {
        name: 'c'
    }
]
})

r.js -o build.js:

  • js/a.js
js/utils_part1.js
js/utils_part2.js
... ...
js/utils_partN.js
js/func1.js
  • js/b.js
js/utils_part1.js
js/utils_part2.js
... ...
js/utils_partN.js
js/func3.js
js/func5.js
js/func6.js

我的问题是:打包之后的 a.js 文件和 b.js 文件 都使用了 utils_part1.js ~ utils_partN.js , 如果另有 c.js , d.js ...... 那么浏览器上每访问一个 js 文件都要重复加载 utils_part1.js ~ utils_partN.js 这部分代码。

build.js 要怎么写才能将 utils_* 打包为一个文件而复用呢?

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(1)
高洛峰

翻出答案了:

http://segmentfault.com/q/1010000000460671

测试如下


热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号