gpt4 book ai didi

Angular 构建配置 : add conditional file (robots. txt)

转载 作者:行者123 更新时间:2023-12-03 19:06:53 25 4
gpt4 key购买 nike

我有两个构建配置“生产”和“开发”。通过选择以下两个命令之一,我可以决定要构建应用程序的配置:

  • ng build --configuration=development
  • ng build --configuration=production

  • angular.json 中,我为每个配置指定了构建选项:
            "build": {
    "builder": "@angular-devkit/build-angular:browser",
    "options": {
    .
    .
    .
    },
    "configurations": {
    "production": {
    "fileReplacements": [
    {
    "replace": "src/environments/environment.ts",
    "with": "src/environments/environment.prod.ts"
    }
    ],
    "index": {
    "input": "src/index.prod.html",
    "output": "index.html"
    },
    .
    .
    .
    },
    "development": {
    "fileReplacements": [
    {
    "replace": "src/environments/environment.ts",
    "with": "src/environments/environment.dev.ts"
    }
    ],
    .
    .
    .
    }
    }
    },
    基本上我会根据所选的构建配置更改 environment.tsindex.html
    有没有办法在项目文件夹中有两个 robots.txt 文件,例如 robots.dev.txtrobots.prod.txt 并在构建期间有条件地将其中一个作为 robots.txt 添加到 dist 文件夹中?几乎我如何使用索引文件。
    目的是防止所有搜索引擎机器人索引我的开发版本,但允许它们索引生产版本。

    最佳答案

    我不认为这可以从 angular.json 处理。
    作为替代方案,robots.txt 可以作为构建后步骤进行复制。去做这个,
    安装 copy npm 包以获得跨平台的复制 CLI 命令:

    npm install copy --save-dev
    使用以下命令将用于生产构建的脚本添加到 package.json 中:
    "build:prod": "ng build --prod && copy robots.txt dist"
    运行 npm run build:prod 以在其中使用 robots.txt 进行生产构建。
    上面的示例假设 robots.txtpackage.json 位于同一目录中,并且假设构建的应用程序位于 dist 文件夹的根目录中。
    更新
    如果复制的文件需要重命名,可以使用 copy-file-from-to 包。如果有更多来自不同来源的文件并且它们也需要重命名,这将特别方便。要在问题的上下文中使用它,请执行以下步骤:
    安装第三方作为开发依赖:
    npm install copy-files-from-to --save-dev
    在项目根目录下为 copy-files-from-to创建一个名为 copyFiles.json的配置文件,内容如下:
    {
    "copyFiles": [
    {
    "from": "robots.dev.txt",
    "to": "dist/robots.txt"
    }
    ]
    }
    创建一个 npm 脚本,它使用 copy-files-from-to 和上述配置:
    "build:prod": "ng build --prod && copy-files-from-to --config copyFiles.json"
    运行 npm run build:prod ,在 robots.dev.txt 中构建后将复制 dist/robots.txt 内容。

    关于Angular 构建配置 : add conditional file (robots. txt),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63363246/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com