VUE JSとVelocity JSのJavaScriptメモリリーク
-
20-12-2019 - |
質問
Velocity.jsとvue.jsを使ってメモリリークに走行しています。問題のいたずら:このフィドルの例を見ることができます: http://jsfiddle.net/hran7/3/
$(function () {
var ExtVue = Vue.extend({
'template': '#template',
'replace': true
});
var currVue;
setInterval(function () {
var nextVue = new ExtVue();
nextVue.$appendTo($('body').get(0));
$(nextVue.$el).velocity({
'left': '0'
}, 0, callback);
function callback() {
if (currVue)
currVue.$destroy();
currVue = nextVue;
}
}, 10);
});
.
私はChromeのタイムライン関数を使用し、ガベージコレクションを強制してもDOMノードの数が減少することはありません。私はヒーププロファイラーにダイビングを始めましたが、それは私の頭の上の少しです。
.animate()
の代わりに.velocity()
の場合、DOMノードは正しくGCEDになるようです。
$(nextVue.$el).animate({
'left': '0'
}, 0, callback);
.
それはまたVUEを削除すると問題を解決するように思われる。例: http://jsfiddle.net/yv6zr/1/
解決
Velocity.js Githubページで解決されました:
所属していません StackOverflow