当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript NgModuleRef.destroy方法代码示例

本文整理汇总了TypeScript中@angular/core.NgModuleRef.destroy方法的典型用法代码示例。如果您正苦于以下问题:TypeScript NgModuleRef.destroy方法的具体用法?TypeScript NgModuleRef.destroy怎么用?TypeScript NgModuleRef.destroy使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在@angular/core.NgModuleRef的用法示例。


在下文中一共展示了NgModuleRef.destroy方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: createNewHosts

 module.hot.dispose(() => {
   const appRef: ApplicationRef = ngModule.injector.get(ApplicationRef)
   const elements = appRef.components.map(c => c.location.nativeElement)
   const makeVisible = createNewHosts(elements)
   ngModule.destroy()
   makeVisible()
 })
开发者ID:jiang263,项目名称:PeerTube,代码行数:7,代码来源:hmr.ts

示例2: async

export const createApplicationTestContext = async (uri: string = ApplicationFallbackOptions.fallbackUri, providers: Array<Provider> = []): Promise<ApplicationTestContext> => {
  const platform: ServerPlatform = createJitPlatform() as ServerPlatform;

  let moduleRef: NgModuleRef<any>;

  let exception: Error;

  const zone = forkZone(templateDocument, uri, {
    onHandleError: function (parentZoneDelegate: ZoneDelegate, currentZone: Zone, targetZone: Zone, error) {
      exception = error;
    }
  });

  await zone.runGuarded<Promise<void>>(async () => {
    moduleRef = await platform.bootstrapModule(BasicRoutedModule, {}, providers);
  });

  return {
    run(fn: (moduleRef: NgModuleRef<any>) => void | Promise<void>): Promise<void> {
      if (exception) {
        return Promise.reject(exception);
      }
      return zone.runGuarded<Promise<void>>(() => Promise.resolve(fn(moduleRef)));
    },
    dispose() {
      try {
        moduleRef.destroy();
      }
      finally {
        platform.destroy();
      }
    }
  };
};
开发者ID:sonukapoor,项目名称:angular-ssr,代码行数:34,代码来源:context.ts

示例3: createNewHosts

 module.hot.dispose(() => {
   const appRef: ApplicationRef = ngModule.injector.get(ApplicationRef);
   const elements = appRef.components.map(c => c.location.nativeElement);
   const removeOldHosts = createNewHosts(elements);
   ngModule.destroy();
   removeOldHosts();
   cssLinkManager.disposeLinks();
 });
开发者ID:hstarorg,项目名称:FlyingChat,代码行数:8,代码来源:hmr.ts

示例4: createNewHosts

 module.hot.dispose(() => {
   const appRef: ApplicationRef = ngModule.injector.get(ApplicationRef);
   const modalService = ngModule.injector.get(NzModalService, null) as NzModalService;
   if (modalService) modalService.closeAll();
   const elements = appRef.components.map(c => c.location.nativeElement);
   const makeVisible = createNewHosts(elements);
   ngModule.destroy();
   makeVisible();
 });
开发者ID:wenxiayili,项目名称:LTMCompanyNameFree.YoyoCmsTemplate,代码行数:9,代码来源:hmr.ts

示例5: bootstrap

              .subscribe((stable) => {

                // Fire the TransferState Cache
                const bootstrap = moduleRef.instance['ngOnBootstrap'];
                bootstrap && bootstrap();

                // The parse5 Document itself
                const AST_DOCUMENT = state.getDocument();

                // Strip out the Angular application
                const htmlDoc = state.renderToString();

                const APP_HTML = htmlDoc.substring(
                  htmlDoc.indexOf('<body>') + 6,
                  htmlDoc.indexOf('</body>')
                );

                // Strip out Styles / Meta-tags / Title
                const STYLES = [];
                const SCRIPTS = [];
                const META = [];
                const LINKS = [];
                let TITLE = '';

                //let STYLES_STRING = htmlDoc.substring(
                  //htmlDoc.indexOf('<style ng-transition'),
                  //htmlDoc.lastIndexOf('</style>') + 8
                //);
              let STYLES_STRING: string = htmlDoc.indexOf('<style ng-transition') > -1
                                    ? htmlDoc.substring(
                                        htmlDoc.indexOf('<style ng-transition'),
                                        htmlDoc.lastIndexOf('</style>') + 8)
                                    : null;
                // STYLES_STRING = STYLES_STRING.replace(/\s/g, '').replace('<styleng-transition', '<style ng-transition');

                const HEAD = AST_DOCUMENT.head;

                let count = 0;

                for (let i = 0; i < HEAD.children.length; i++) {
                  let element = HEAD.children[i];

                  if (element.name === 'title') {
                    TITLE = element.children[0].data;
                  }

                  if (element.name === 'script') {
                    SCRIPTS.push(
                      `<script>${element.children[0].data}</script>`
                    );
                  }

                  // Broken after 4.0 (worked in rc)
                  // if (element.name === 'style') {
                  //   let styleTag = '<style ';
                  //   for (let key in element.attribs) {
                  //     if (key) {
                  //       styleTag += `${key}="${element.attribs[key]}">`;
                  //     }
                  //   }

                  //   styleTag += `${element.children[0].data}</style>`;
                  //   STYLES.push(styleTag);
                  // }

                  if (element.name === 'meta') {
                    count = count + 1;
                    let metaString = '<meta';
                    for (let key in element.attribs) {
                      if (key) {
                        metaString += ` ${key}="${element.attribs[key]}"`;
                      }
                    }
                    META.push(`${metaString} />\n`);
                  }

                  if (element.name === 'link') {
                    let linkString = '<link';
                    for (let key in element.attribs) {
                      if (key) {
                        linkString += ` ${key}="${element.attribs[key]}"`;
                      }
                    }
                    LINKS.push(`${linkString} />\n`);
                  }
                }

                resolve({
                  html: APP_HTML,
                  globals: {
                    styles: STYLES_STRING,
                    title: TITLE,
                    scripts: SCRIPTS.join(' '),
                    meta: META.join(' '),
                    links: LINKS.join(' ')
                  }
                });

                moduleRef.destroy();

//.........这里部分代码省略.........
开发者ID:SKorolchuk,项目名称:aspnetcore-angular2-universal,代码行数:101,代码来源:temporary-aspnetcore-engine.ts

示例6: callback

		.subscribe(() => {
			callback(state.renderToString());
			moduleRef.destroy();
		});
开发者ID:RootedGlobal,项目名称:ngx-universal-webpack-seed,代码行数:4,代码来源:express-engine.ts


注:本文中的@angular/core.NgModuleRef.destroy方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。