本人初学DOJO,一直在研究如何使用,今天在研究dojo的connect功能时,发现了一些配置的有关问题,特此记录下来。
1、dojo的config配置中涉及到async和parseOnLoad配置,async默认值是false,parseOnLoad应该是false。当我们想要实现异步的时候,配置是:async: true,但是这个时候就需要我们主动去调用parser解析页面,connect才会生效,必须解析页面在前。如图:
这样看似没什么问题,但是如果网站的布局也是使用异步的,页面加载就是采用标签页的形式,那么这个时候connect就会失效,重复使用parser会报错。经过尝试require包含进dojo/main才可以,但是这样的话,貌似在同一个页面只能包含这一次,如果其他地方包含过,这个地方的connect也会失效。(页面展示采用标签页的形式展示的)
2、为了实现页面的异步加载,同时又可以很好的使用dojo里面的一些类库,经过尝试,将配置配置为:async: true,parseOnLoad:true比较好些,页面解析交给dojo自己去解析,而不是调用parser的方法,这样可以顺利的使用connect了,如果手工调用parser解析的话,会出现一些意向不到的问题(可能由于本人是新手,对dojo不太熟悉),同时由于异步加载的原因,无法直接使用dojo直接调用一些类库,但是如果调成同步的话,dojo就可以直接使用了。下面是两个对比图:
总结:以上如果有哪些理解不正确的地方,还希望各位大神多多指教,共同学习!