vue

解决 npm run build 403问题

2019-05-18  本文已影响8人  他大舅啊

vue-cli 2.0

image.png

vue-cli 3.0

image.png

dist 目录超过5个文件 自动删除第一个

const fs = require('fs');
// 删除目录
function deleteFolder(path) {
    let files = [];
    if( fs.existsSync(path) ) {
        files = fs.readdirSync(path);
        files.forEach(function(file,index){
            let curPath = path + "/" + file;
            if(fs.statSync(curPath).isDirectory()) { // recurse
                deleteFolder(curPath);
            } else { // delete file
                fs.unlinkSync(curPath);
            }
        });
        fs.rmdirSync(path);
    }
  }
  
  
  // 删除 num run build 编译出来的目录
  function deleteOtherDir() {
    // 只保留最近的x个版本
    const RetainVersionNum = 2;
    let webapp_paths = fs.readdirSync(path.join(process.cwd(), 'dist'));
    webapp_paths = webapp_paths.filter(item => {
        if (item !== 'index.html') {
            return parseInt(item);
        }
    });
  
    webapp_paths = webapp_paths.sort();
    if (webapp_paths.length > RetainVersionNum) {
        let delete_webapp_paths = webapp_paths.slice(0, webapp_paths.length - RetainVersionNum);
        delete_webapp_paths.forEach(delete_webapp_path => {
            let delete_webapp_abs_path = path.join(process.cwd(), 'dist', delete_webapp_path);
            // console.log('delete_webapp_abs_path -->', delete_webapp_abs_path);
            deleteFolder(delete_webapp_abs_path)
        })
    }
  }
  deleteOtherDir();
上一篇 下一篇

猜你喜欢

热点阅读