如何在再次启动脱机应用程序时使用javascript清除缓存

时间:2016-03-24 13:34:33

标签: javascript jquery caching node-webkit appdata

我需要帮助使用Javascript清除缓存,是否可以使用Javascript清除缓存?。

我使用Javascript& amp ;;开发了一个离线Chrome应用程序。 Node WebKit。使用此应用程序时,缓存大小日益增加。

所以每当我启动应用程序时,我都要删除缓存目录或从AppData / Local / MyAPP.1.0清除缓存。

请帮我用Javascript(相关解决方案)清除缓存。

如果您需要任何相关信息,请与我们联系。

提前致谢。

3 个答案:

答案 0 :(得分:1)

试试这个,它可能有效

require("nw.gui").App.clearCache();

答案 1 :(得分:1)

我总是禁用磁盘缓存,因为我发现它会减慢所有内容;即使在我写的浏览器中,如果你想要禁用它,这也意味着不会有任何垃圾要清理,请在你的 package.json 中使用此设置:

 "chromium-args": "--disk-cache-dir=W:/abc --media-cache-dir=W:/abc --disk-cache-size=1 --media-cache-size=1",

注意:上面是DUMMY驱动器/路径,它们不存在以杀死缓存。

答案 2 :(得分:0)

使用此递归函数删除AppData / Local / {MyAPP.1.0} /

中的所有文件
deleteFolderRecursive:function(path) {        
    var fs = require("fs");
    if( fs.existsSync(path) ) {
        try{
            fs.readdirSync(path).forEach(function(file) {
                var curPath = path + "/" + file;
                if(fs.statSync(curPath).isDirectory()) { 
                    try{
                        deleteFolderRecursive(curPath);
                    }catch(e){
                        console.log(e);
                    }
                } else {
                    try{
                        fs.unlinkSync(curPath);
                    }catch(e){
                        console.log(e);
                    }
                }
            });
            fs.rmdirSync(path);
        }catch(e){
            console.log(e);
        }
    }
}

使用

获取AppData文件夹路径
var path = require("nw.gui").App.dataPath;

使用

获取AppData文件夹路径
deleteFolderRecursive(path);