加载应用程序的DOM非常慢,因为加载微风元数据非常慢。有没有提示让它加载更快并优化?
请查看以下链接,了解它对加载时间的影响程度。
https://dl.dropboxusercontent.com/u/2781659/8-27-2013%201-02-38%20PM.jpg
答案 0 :(得分:2)
我的代码问题是它开始在加载时查询breeze管理器。
如果在查询执行期间元数据不可用,则Breeze会加载元数据。
我更改了代码,以便在元数据加载之前不会触发查询。
我的代码更改如下。
在viewmodel加载期间,我调用loadMetadata()函数并提供回调。加载元数据后,我的回调方法将触发初始查询。
var manager;
var store;
function loadMetadata(callback)
{
manager = new breeze.EntityManager(serviceName);
store = manager.metadataStore;
store.fetchMetadata(serviceName, callback);
}
答案 1 :(得分:0)
请参阅Loading metadata with breeze is slow获取提示。
但你有其他问题。我可以想到为什么同一个EntityManager INSTANCE会要求两次相同的元数据。也许你每次都在创造一个新的EM?如果这就是你想要做的,你可以在EM之间共享相同的metedatastore。
你想知道一开始是什么让它变慢。我怀疑这与Breeze在客户端或服务器上有什么关系。