gpt4 book ai didi

javascript - 在 Javascript 循环中显示 Dynamics CRM 选项卡 - 性能

转载 作者:行者123 更新时间:2023-11-28 04:14:41 25 4
gpt4 key购买 nike

我在 Dynamics CRM 2015 中遇到性能问题。我必须显示表单上可用的所有选项卡。所以我的 Javascript 代码如下所示:

Xrm.Page.ui.tabs.get().forEach(function (v, i) {
var performance1 = performance.now();
v.setVisible(true);
var performance2 = performance.now();
console.log(v.getName() + " show process took " + (performance2 - performance1) + " milliseconds.");
});

运行后,脚本在控制台中写入:

tab_10 show process took 4839.822311864544 milliseconds.
tab_13 show process took 5.218640743772994 milliseconds.
tab_14 show process took 4.996419017363223 milliseconds.
tab_7 show process took 3.8835254718323995 milliseconds.
tab_5 show process took 4.66844116813445 milliseconds.
tab_17 show process took 4.570270927553793 milliseconds.
tab_20 show process took 3.5970468606719805 milliseconds.
tab_8 show process took 3.7335927407548297 milliseconds.
tab_16 show process took 3.5988317741357605 milliseconds.
tab_15 show process took 5.135642267643561 milliseconds.
tab_12 show process took 3.6483631227965816 milliseconds.
tab_19 show process took 6.199896921247273 milliseconds.

为什么第一个元素的显示花费了 4 秒以上(!!!),而下一个元素的显示花费了 2 - 5 毫秒???

最佳答案

使用CRM Performance center捕获指标并研究组件明智的负载分析。

Xrm.Page.ui.controls.get("tabname").setVisible(true); 

当对第一个控件执行上述语句 setVisible 时,产品将呈现所有相关的 DOM 和脚本,因此大约需要 4 秒。这会减少后续调用。

这也取决于浏览器及其工作方式。

也许您可以使用 setDisplayState 来代替 setVisible 来减少数字。

Xrm.Page.ui.tabs.get("tabname").setDisplayState('collapsed')‌​;  
Xrm.Page.ui.tabs.get("tabname").setDisplayState('expanded')‌​;

关于javascript - 在 Javascript 循环中显示 Dynamics CRM 选项卡 - 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45966048/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com