代码之家  ›  专栏  ›  技术社区  ›  Daniil Andreyevich Baunov

Angular CLI-从优化中排除包

  •  2
  • Daniil Andreyevich Baunov  · 技术社区  · 6 年前

    在Angular6应用程序中,我们使用一个预构建的React应用程序来渲染一些内部组件。React应用程序的编译版本作为节点模块安装。

    当我在dev模式下运行代码时 ng serve ,一切正常。

    但是,当我在 --prod ,反应组件的行为开始有点不同。出现了一些奇怪的渲染问题。

    我正在尝试angular cli设置,并意识到如果禁用 optimization (“optimization”:false),问题消失了。但是束的大小变大了2倍。

    optimization: false, buildOptimizer: true, vendorChunk: false - 33.3mb (works good)
    optimization: true, buildOptimizer: false, vendorChunk: false - 17mb (not working)
    optimization: true, buildOptimizer: false, vendorChunk: true - 17mb (not working)
    

    当Angular试图优化React模块时,似乎出现了问题。

    我认为除了React应用程序模块之外,为所有项目启用优化是很好的。以某种方式将React app模块从优化管道中排除,并可能将其捆绑到单独的块中(如果这样做有意义的话)。

    有人能提出解决办法吗?或者猜猜为什么会这样?

    1 回复  |  直到 6 年前
        1
  •  2
  •   Daniil Andreyevich Baunov    6 年前

    好的,因为我们还没有找到更好的解决方案,所以我们决定保留所有的构建设置。相反,我们添加了 main.js React 图书馆 angular.json build.scripts 数组。这样,Angular build系统会将此库添加为 <script> index.html window.<libraryName> ).

    反应 从我们的代码库。现在,Angular构建过程完全忽略了该库,只是将未修改的源代码作为单独的脚本添加。