Я построил отзывчивую демонстрацию форума, которая отобразила список тем на мобильном устройстве. Он был невосприимчив, когда коллекция была обновлена. Я думаю, что причиной этого является медленный запрос.Производительность запроса в minimongo
Мой тест HTML:
<template name="index">
<h1 id="myTime"></h1>
{{#each foo}}
<h1>{{name}}</h1>
{{/each}}
<input id="t" type="text"></input>
<button id="s">submit</button>
</template>
и JS:
Template.index.foo = function() {
return Foo.find({}).fetch();
};
Template.index.events({
"click #s": function() {
Foo.insert({name: $("#t").val()});
}
});
Meteor.startup(function() {
Meteor.setInterval(function() {
$("#myTime").text((new Date()).getTime());
}, 1);
});
когда количество документов очень мало, код работает очень быстро. когда количество документов превышает 300, рендеринг остановится примерно на 3 с
Можно ли улучшить его? :)
спасибо! У меня нет кода операции DOM. Все операции DOM обрабатываются с помощью шаблона. И задержка перед «Template.index.rendered» (я добавил «предупреждение» в визуализированную функцию, и она была предупреждена после задержки) – QingYun