收藏
回答

请问jweixin的AMD加载逻辑能否优化?

以前的H5页面,通过<script>标签动态引入了jweixin-1.3.0.js。而后做功能升级的时候,需要动态引用jweixin-1.6.0,采用AMD方式,但一直引入不成功。经过review代码发现,是因为jweixin代码中有个

if(!window.jWeixin) { ... }


根据这个情况,在进行AMD加载前删除了jWeixin,即可正确导入模块。

delete window.jWeixin
loadScript('jweixin-1.6.0', jweixin => { ... })


我能理解在使用<script>标签引入的时候,这个条件判断的作用;但感觉作为AMD的模块,与全局环境不能充分解耦,就失去了模块化的本意。而且由于调用是个异步过程,delete之后、load返回之前,是否会产生的其他影响就是个盲区了。

建议优化。

回答关注问题邀请回答
收藏
登录 后发表内容
问题标签