网站是php 作为后端,现在公司外包出去,我的任务就是把外包写的凌乱的js 模块化(我打算用Seajs 或Requirejs )。网站有个后台可以管理模版的,模版文件夹里有存放插件的文件夹和公共部分的文件夹的模版,这些模版里有包含script 标签,我如果把这些script 抽出来做成js 文件,那么怎么在php 其他页面引用这个模块时候,也把这模块要用的js 文件一同加载进去?
1
julio867 2015-05-22 17:38:43 +08:00
使用一个隐藏域放置你抽取出来的JS文件的地址,当包含模块的页面被加载的时候,使用seajs动态读取隐藏域中指定的JS文件地址并加载
|
2
Septembers 2015-05-22 17:40:36 +08:00
1. 整理现有业务 结构
2. 整理现有业务 逻辑 3. 重新抽象设计 业务分类 组织结构 4. 重新抽象设计 文件分类 组织结构 5. 基本上可以开始工作了 以上均省略 前端 修饰 不要一开始就工作,那是做死,做到一半发现要填前面挖的坑。。。。。。。。 开始工作宁可多花点时间,对于后期是比较省事的。。。。。。。。。。 |
3
wity_lv 2015-05-22 17:56:15 +08:00 1
最好别动. 改bug的时候再小部分重构.
重构基本策略: * 理清当前逻辑. 加测试,描述现有代码的功能 ( mocha + chai + karam runner ) * 重构, 需要顶一个目标, 避免为了重构而重构. (最好用webstorm) * 保证测试通过. 重构目的: * 使代码逻辑更清晰,方便修复bug * 调整结构, 方便扩展 SeaJS or RequireJS 模块化建议后面在做. 先用这种格式把代码控制起来再模块化. (function(win, $) { })(window, jQuery); |
4
deathscythe OP @wity_lv 是啊,我真奇怪这个外包用了mootool 和jquery。我把用jquery 都用闭包 包含起来了。
|
5
deathscythe OP @julio867 这方法可行?用SeaJS 或者 RequireJS 在main.js 写读取hidden input 的值?
|
6
julio867 2015-05-24 16:29:03 +08:00
@deathscythe 是否可行需要楼主去尝试,因为我说的只是思路;另外在我自己的项目中,使用该方法可以解决我的问题;但是因为文字方式的表述未必能清楚传达你我的本意,所以请楼主多尝试\(^o^)/~
|