复杂页面前端模块化的方式:
方式一:iframe
方式二:velocity模板(#parse)
方式一,优点很多,也有缺点,例如页面之间传递参数等;
方式二,页面之间的调用,传参更容易,页面性能更好;但是也有一些缺点,如样式互相影响,js之间调用混乱等;
就方式二的建议如下:
1、css样式,少用或者不用全局样式;
2、模块之间尽量不要进行调用,除非一个模块完全属于另外一个模块;
3、模块之间的方法调用,或者模块调用主窗口的js函数,通过主窗口的全局事件(window)处理;
举例如下:
场景:
a页面 引用 b模块
a页面 引用 c模块
b模块 调用 a页面的方法、c模块的方法
方法:
c模块通过reture返回方法,a页面封装全局c模块方法
b中直接使用全局方法即可。
详情可参考:agentview.vm
如有问题,或者更好的方式,请及时沟通。