Angular 配置或编译 JSON Assets

标签 angular webpack angular-compiler

是否可以在 Angular 中或通过 custom-webpack 的帮助用于在将 JSON Assets 复制到 Assets 文件夹之前对其进行转换的插件。我有一个 JSON 文件,我想在将其放入 Assets 文件夹之前转换其中的一些值。我尝试使用 CopyWebpackPlugin但好像不适用于 Assets 。

我想要做的是从 src 获取 JSON ,在编译期间替换该 JSON 中的一些值,然后将其放入 dist/<...>/assets 下的目标位置.

最佳答案

这个问题实际上可以通过使用copy-webpack-plugin来解决。需要注意的是,Angular 编译器将在 copy-webpack-plugin 运行后复制资源。我观察到的问题是 copy-webpack-plugin 复制的文件被原始资源文件覆盖。为了确保原始资源模板文件不会覆盖 copy-webpack-plugin 复制和转换的文件,需要执行以下步骤:

  1. 使用asset configurationangular.json 中使用扩展 Assets 形式从 Assets 中排除源文件(可以选择首先将源文件重命名为 foo.tpl.json ):

    { "glob": "**/*", "input": "./assets", "output": "dist/assets",
      "ignore": [ "**/foo.json" ]
    }
    
  2. 通过copy-webpack-plugin复制并转换文件,这可以使用 custom-webpack 来实现通过将 copy-webpack-plugin 作为附加插件添加到 webpack 配置中来添加插件。

关于Angular 配置或编译 JSON Assets ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63129999/

相关文章:

angular - AOT 编译器 - 包括延迟加载的外部模块

angular - 如何清除 Angular (5+) Renderer2 中所有子项的元素?

angular - 在 Angular 4 中使用动态模块引导根组件

javascript - 在 .vue 组件中编译方法时出现语法错误

css - Angular 7 SCSS 不保留 CSS 自定义属性

angular-cli - 无法解析依赖项 : npm ERR! peer @angular/compiler @"11.2.8"

ios - GridLayout 内带有组的 NativeScript Angular RadDataForm 不会扩展以显示 iOS 上的字段

jquery - Angular 2在模板渲染后执行脚本

node.js - Angular ,Webpack : build project into output path

javascript - jQuery 和 webpack : how to require