【问题标题】:Tree Shaking RxJS Angular 5摇树 RxJS Angular 5
【发布时间】:2018-02-01 02:27:22
【问题描述】:

我使用 ng cli 创建了一个全新的 Angular 项目,但没有添加任何内容。然后我跑了

ng build --prod --aot -vc=true -sm -oh=none

我使用 source-map-explorer 来查看什么是 tree-shook。我看到一堆我没有使用的 rxJs 东西,比如 observable、merge map 等。这正常吗?这是因为其他节点模块正在使用它,比如角度?它是我的供应商捆绑包的 14%。

Angular CLI: 1.5.0
Node: 6.11.0
OS: win32 x64
Angular: 5.2.2
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router

@angular/cli: 1.5.0
@angular-devkit/build-optimizer: 0.0.42
@angular-devkit/core: 0.0.29
@angular-devkit/schematics: 0.0.52
@ngtools/json-schema: 1.1.0
@ngtools/webpack: 1.8.0
@schematics/angular: 0.1.17
typescript: 2.4.2
webpack: 3.8.1

"dependencies": {
    "@angular/animations": "^5.0.0",
    "@angular/common": "^5.0.0",
    "@angular/compiler": "^5.0.0",
    "@angular/core": "^5.0.0",
    "@angular/forms": "^5.0.0",
    "@angular/http": "^5.0.0",
    "@angular/platform-browser": "^5.0.0",
    "@angular/platform-browser-dynamic": "^5.0.0",
    "@angular/router": "^5.0.0",
    "core-js": "^2.4.1",
    "rxjs": "^5.5.2",
    "zone.js": "^0.8.14"
  }

【问题讨论】:

    标签: angular rxjs


    【解决方案1】:

    在您的依赖项中,很多 @angular 模块/组件使用 rxjs,因此在这些组件中的每一个中,在导入到每个相应 Angular 模块/组件的运算符上都会发生摇树。

    尤其是所有可观察的角度路由器。

    【讨论】:

    • 我也是这么想的,IIS 正在压缩我的站点,因此捆绑包在现实世界中确实变得更小了。感谢您的回复。明天我会将此标记为答案。我就是想看看别人怎么说。感谢您抽出时间让我变得更好。
    • 很高兴我能帮上忙
    猜你喜欢
    • 2020-03-24
    • 1970-01-01
    • 2020-10-18
    • 1970-01-01
    • 2018-10-21
    • 2018-11-24
    • 1970-01-01
    • 2021-11-26
    • 2020-06-19
    相关资源
    最近更新 更多