質問

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ページで解決されました:

/ P>

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top