我将Domino 9.0.1与Fix Pack 5一起使用,这给了我dojo 1.9.7。在我的xsp属性中,将其设置为使用运行时优化的JavaScript和CSS资源。我期望此设置在加载XPage时可以大大减少对服务器的请求数量,但效果却很小。
罪魁祸首是dojo.js-它正在向服务器发出各种不同的.js和资源文件的100多个单独请求。我假设这些来自我正在使用的利用dojo的各种控件。有什么方法可以将这些dojo请求合并为一个请求?
UPDATE:他们几乎所有来自哪里/xsp/.ibmxspres/dojoroot-1.9.7/dijit/
,并/xsp/.ibmxspres/dojoroot-1.9.7/dojo/
和也从几/xsp/.ibmxspres/.extlib/dijit/
更新:我的XSP设置:
xsp.ajax.renderwholetree=false
xsp.error.page.default=true
xsp.persistence.mode=fileex
xsp.resources.aggregate=true
xsp.user.timezone=true
xsp.html.doctype=html
xsp.theme.mobile.pagePrefix=m_
xsp.application.forcefullrefresh=true
xsp.library.depends=com.ibm.xsp.extlib.library
xsp.min.version=9.0.1
xsp.theme=vi.theme
更新:我正在使用dynamicContent控件,该控件会自动加载包含许多使用dojo的控件的自定义控件。这导致XPages引擎生成一堆带有dojo.require()调用的脚本标签。这些调用导致dojo.js发出了100多个xhr请求。
我的解决方案是在主题中使用资源标签在我的自定义控件中包括dojo.require()调用,XPages引擎正在自动生成该控件:
<resources>
<dojoModule target="xsp" name="dojo.parser"></dojoModule>
<dojoModule target="xsp" name="extlib.dijit.DynamicContent"></dojoModule>
<dojoModule target="xsp" name="dextlib.dojo.helper.IFrameAdjuster"></dojoModule>
<dojoModule target="xsp" name="dijit.Toolbar"></dojoModule>
<dojoModule target="xsp" name="dijit.form.Button"></dojoModule>
<dojoModule target="xsp" name="extlib.dijit.Menu"></dojoModule>
<dojoModule target="xsp" name="extlib.dijit.Tabs"></dojoModule>
<dojoModule target="xsp" name="extlib.dijit.TabPane"></dojoModule>
<dojoModule target="xsp" name="dijit.form.DateTextBox"></dojoModule>
<dojoModule target="xsp" name="dijit.form.TimeTextBox"></dojoModule>
</resources>
这导致dojo js文件被聚合。执行此操作后,请求数量从134个增加到28个。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句