【问题标题】:Replace chunk name with module name in angular 4 lazy loading在 Angular 4 延迟加载中用模块名称替换块名称
【发布时间】:2018-07-07 20:25:20
【问题描述】:

我正在使用 angular-cli-1.6.3 来捆绑我的项目。 我尝试将延迟加载的块名称重命名为有效的模块名称。但它不起作用。下面给出代码sn-p,

{
  path: 'lazy',
  loadChildren: './lazy/module#LazyModule?chunkName=LazyModule'
}

【问题讨论】:

  • 你为什么使用?chunkName=LazyModule?你从哪里弄来的?
  • 我看到了一些样本。但现在我删除了。

标签: angular angular-router angular4-router angular-router-loader


【解决方案1】:

你应该使用-nc标志

ng build --aot -nc

ng build --aot --named-chunks

更新 1:基于评论

要删除哈希值,请将--output-hashing 设置为 false,如下所示

ng build --aot --nc --output-hashing=false

Documentation Link

【讨论】:

  • 抛出错误,例如:ERROR in Error: LazyModule?chunkName=LazyModule is not an NgModule
  • 它只是创建了一个类似“module.ebc4664b446ca766a851.chunk.js”的文件。但我希望模块名称作为文件名或自定义名称。做有需要的
  • 模块的名称是什么?
  • 不,它只是像这样创建的“module.ebc4664b446ca766a851.chunk.js”。该怎么办?我正在使用 angular-cli-1.6.3
  • 重命名那个太lazy.module.ts
【解决方案2】:
 ng build --namedChunks=true --outputHashing=none --vendorChunk=true
  • namedChunks 为延迟加载的块使用文件名
  • output-hashing 定义输出文件名缓存清除哈希模式。
  • vendorChunk 使用仅包含供应商库的单独捆绑包。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-10-16
    • 2017-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-01
    相关资源
    最近更新 更多