如何在angular 2+;

如何在angular 2+;,angular,lazy-loading,angular2-compiler,Angular,Lazy Loading,Angular2 Compiler,我想知道是否有任何方法可以从具有多个模块的应用程序中构建特定模块 例如,我在应用程序中有模块a、b和c,但对于我的一个客户机,只需要模块b和c。我不想编译所有模块并删除不需要的块,而是想找到一种方法来编译只作为命令或其他东西传递的块 非常感谢您的帮助。您可以使用路由器功能延迟加载应用程序中的子模块 这将为您的应用程序创建单独的JS模块块 不幸的是,所有内容都将被编译,因为您无法在导入等操作中轻松删除链接,但如果您的用户不在应用程序中访问这些模块,您的模块将无法下载或解析 以下是关于此的官方文档链

我想知道是否有任何方法可以从具有多个模块的应用程序中构建特定模块

例如,我在应用程序中有模块a、b和c,但对于我的一个客户机,只需要模块b和c。我不想编译所有模块并删除不需要的块,而是想找到一种方法来编译只作为命令或其他东西传递的块


非常感谢您的帮助。

您可以使用路由器功能延迟加载应用程序中的子模块

这将为您的应用程序创建单独的JS模块块

不幸的是,所有内容都将被编译,因为您无法在导入等操作中轻松删除链接,但如果您的用户不在应用程序中访问这些模块,您的模块将无法下载或解析

以下是关于此的官方文档链接:

  • 在此应用程序中,有一个延迟加载安装路由的好例子:

N.B:在本例中,带有基本模块的整个应用程序都是延迟加载的,这不是一个好的做法。只有可能无法访问的子模块才意味着延迟加载。

使用以下结构

使用
CommonModule
代替
BrowserModule

import { CommonModule } from '@angular/common';
import { NgModule } from "@angular/core";

import { LastTableComponent } from './last-table.component';

@NgModule({
    imports: [
      CommonModule,          
    ],
    exports:[
      LastTableComponent,
    ],
    declarations: [
      LastTableComponent,
    ],
    providers: [     
    ]

  })
export class LastTableModule { }

我已经在做延迟加载,所以它将只下载所需的块。但将编译所有模块。我必须删除所有不需要的链接,并删除不同部署的区块文件。我想要一个只编译所需模块的解决方案