【问题标题】:How to remove folder with npm before build如何在构建之前使用 npm 删除文件夹
【发布时间】:2018-08-09 15:36:00
【问题描述】:

我有一个脚本 "build": "rimraf dist webpack --progress --config webpack/prod.js", 但实际上,它删除的不是 dist,而是 webpack 文件夹中的所有文件。但我只需要删除 dist

Structure:
 -dist
 -webpack
     -somefiles.js

【问题讨论】:

  • 你可以试试这个rimraf dist; webpack --progress --config webpack/prod.js

标签: javascript node.js npm webpack package.json


【解决方案1】:

Npm 脚本与直接在 bash 中运行命令基本相同。 在您的情况下,您正在运行rimraf dist webpack,这意味着 webpack 是 rimraf 的参数。 要分隔命令,您可以使用;&,如果您想确保第一个命令在运行第二个命令之前成功运行,请使用&& 所以你的脚本应该是这样的。

rimraf dist && webpack --progress --config webpack/prod.js

【讨论】:

    【解决方案2】:

    快速简便的跨平台解决方案。不需要任何库

    package.json 中添加一个脚本,该脚本使用node.js api 通过内联执行来执行

    package.json脚本中添加以下代码

    {
      ...
      "scripts": {
         "rmdir": "node -e \"var fs = require('fs'); process.argv.slice(1).map((fpath) => fs.rmdirSync(fpath, { recursive: true })); process.exit(0);\"",
      }
    
    }
    

    然后在命令窗口如下执行

    npm run rmdir -- folder1 folder2
    

    【讨论】:

      【解决方案3】:

      npm install --save-dev del-cli

      “脚本”:{ “预构建”:“del-cli --force ../folder-to-delete” } 当您想删除父文件夹时,请注意“--force”

      【讨论】:

        猜你喜欢
        • 2021-08-27
        • 2019-05-15
        • 2017-02-16
        • 1970-01-01
        • 1970-01-01
        • 2016-08-13
        • 2015-05-27
        • 2013-03-21
        • 1970-01-01
        相关资源
        最近更新 更多