【问题标题】:How to remove dist files in Angular 6?如何删除 Angular 6 中的 dist 文件?
【发布时间】:2021-09-26 21:45:50
【问题描述】:

我想部署我的 Angular 项目,我在我的 src 文件夹中生成 dist 文件,像这样

ng build

在部署之前,我决定向我的页面添加一些功能:

问题 这样做可以更新dist文件吗?

ng serve update /dist dir

如果为 false,我想删除 dist 文件并创建另一个文件,以便它可以与所有文件夹一起更新,这就是我想要做的

ng serve remove /dist dir

这是删除 dist 文件的正确方法吗?

【问题讨论】:

  • 你为什么不再次ng buildserve 在内存中,所以这无济于事。
  • 再次构建。旧的将被替换
  • 正如 jonrsharpe 暗示的那样,ng serve 不会生成 /dist,因为它服务于内存中的供应商、样式、pollyfills 和 main。
  • @jonrsharpe 这并不容易我不会在这里问是否那么简单:我收到此错误:ENOTEMPTY: directory not empty, rmdir 'C:\Users\Bonge\Documents\Projects\movies_database\movies-client\dist\movies-client' Error: ENOTEMPTY: directory not empty, rmdir 'C:\Users\Bonge\Documents\Projects\movies_database\movies-client\dist\movies-client' at Object.fs.rmdirSync (fs.js:846:18)
  • 描述您在问题中遇到的实际问题很有用;请相应地edit。如果您对 Angular CLI 提供的功能有疑问,最好在 GitHub 上查看他们的问题跟踪器,看看其他人是否有相同的问题。但是你当然不能仅仅发明像ng serve remove 这样的命令并期望它们神奇地工作。您可以简单地手动删除文件夹然后再次构建。

标签: angular npm angular-cli


【解决方案1】:

Windows 上最简单的解决方案

rd /s dist 

在 Linux 上

rm -r dist

【讨论】:

  • dzieki stary ! :)
【解决方案2】:

由于您使用的是 package.json 并且为了操作系统安全,我推荐使用 rimraf。这不仅仅是关于 Windows 与 Linux。还有关于 Linux 发行版与 Linux 发行版的对比、更改访问权限等。使用这个额外的抽象层是安全的。

安装:

npm install rimraf

在 package.json 的脚本部分中,将其添加为第一个命令,并在 && 之后附加您想要执行的操作:

"scripts": {
    "ng": "rimraf /dist && ng build"
}

调用构建/服务:

npm run ng

ng 是您定义的脚本执行标识符。

【讨论】:

    【解决方案3】:

    对此有一个标志。见angular.io/cli/build

    --delete-output-path true
    

    我用

    "build:dev": "ng build --configuration dev --delete-output-path true"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-12-10
      • 1970-01-01
      • 2019-04-06
      • 1970-01-01
      • 2018-09-20
      • 2020-09-13
      • 1970-01-01
      相关资源
      最近更新 更多