У меня есть вид, который требует от меня более 100 изображений. Сегодняшний код выглядит примерно так:
<figure ng-repeat="moment in moments | onlyEnabledMoments">
<img image-spinner-src="{{constructFrame(moment)}}"
img-spinner-w="{{moment.Event.width}}"
img-spinner-h="{{moment.Event.height}}"
image-spinner-loader="lines" on-tap="playEvent(moment)" />
</figure>
Где constructFrame(moment)
:
$scope.constructFrame = function (moment) {
var stream = "";
stream = moment.Event.recordingURL + "/index.php?view=image" +
"&eid=" + moment.Event.Id + "&fid=" +
NVR.getSnapshotFrame() +
"&width=" + moment.Event.thumbWidth * 2 +
"&height=" + moment.Event.thumbHeight * 2;
stream += NVR.getAuthToken();
return stream;
};
Обратите внимание, что причина, по которой я вызываю функцию, заключается в том, что функция возвращает токен, который изменяется время.
Проблема этого подхода в том, что при наличии более 100 изображений производительность на мобильных устройствах ужасна. Я понимаю, что это, вероятно, связано с оценкой постоянного выражения. Я не могу использовать одностороннюю привязку здесь, потому что токен может измениться.
Как улучшить производительность?