gpt4 book ai didi

ExtJS:频繁使用 XTemplate = 性能下降?

转载 作者:行者123 更新时间:2023-12-02 06:43:32 24 4
gpt4 key购买 nike

我有一个 ExtJS 面板,它显示几位数据并且需要经常更新。例如,显示 DOW、NYSE、NASDAQ 等当前市场价格的面板。

考虑到数据会频繁更新(至少每秒更新一次),更新数据字段的单个元素与每次使用 XTemplate 重新生成所有 HTML 相比,效率要高得多吗?

例如,如果我重新应用 XTemplate,它可能看起来像这样:

update: function(marketData) {
Ext.get('nasdaq-market-price-div-id').update(marketData.nasdaqPrice);
Ext.get('nyse-market-price-div-id').update(marketData.nysePrice);
//Repeat for all fields...
}

与每次使用一个 XTemplate 相比,像这样:

update: function(marketData) {
var tpl = new XTemplate('<div>{nasdaqPrice}</div><div>{nysePrice}</div>');
var html = tpl.applyTemplate(marketData);
Ext.get('market-data-div-id').update(html);
}

我喜欢使用 XTemplate,因为它允许我将 HTML 分开(实际上是分开的文件)并有助于提高代码的可读性/可维护性。 但是,有人知道每次重新应用模板是否会对性能造成过高的影响吗?我猜是这样,但我希望我能从“知情人士”那里得到权威的答复。

谢谢!

最佳答案

我同意@timdev——XTemplate 应该没问题(顺便说一句,速度非常快)。但是,我不会每次都从头开始创建 XTemplate。我会做更像这样的事情:

update: function(marketData) {
// assuming that this is a class or some appropriate scope
if(!this.PriceTpl){
this.PriceTpl = new XTemplate('<div>{nasdaqPrice}</div><div>{nysePrice}</div>');
this.PriceTpl.compile();
}
this.PriceTpl.overwrite('market-data-div-id', marketData);
}

关于ExtJS:频繁使用 XTemplate = 性能下降?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4378614/

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