清除outputDir,除了一些文件

时间:2019-05-21 00:14:46

标签: vue.js npm vue-cli

我正在将Vue.js与vue-cli一起使用,并且当前在我运行每个脚本clean的脚本之前都要在package.json中使用它来清理除app.php.htaccess文件之外的所有构建文件:

package.json

"scripts": {
    "watch": "npm run clean && vue-cli-service build --mode development --watch --no-clean",
    "dev": "npm run clean && vue-cli-service build --mode development --no-clean",
    "build": "npm run clean && vue-cli-service build --no-clean",
    "clean": "find ../outputDir/* -not -name 'app.php' -not -name '.htaccess' -delete"
  }

这在Linux OS上工作正常,但在macOS和Windows上却无法正常工作。是否有更好的解决方案将某些文件保留在 outputDir 中,以便在所有操作系统上都稳定?

1 个答案:

答案 0 :(得分:1)

您可以将文件夹结构更改为以下形式:

OutputDir
├── app.php
└── static
    ├── index.js
    └── otherOutput.js

,然后将vue输出指向OutputDir/static,则不需要--no-clean选项,它只会删除OutputDir/static而不是OutputDir内部的文件,因此您的app.php将保持不变。这应该适用于所有平台。