typescript - 如何为 plunker 创建 Angular2 单个文件?

标签 typescript angular plunker

我正在使用 such plunker 就像 Angular2 的启动器。但它非常慢。主要是因为它每次重新加载时都会尝试转换它:

var angularVersion = '2.0.0-rc.4';

System.config({
  baseUrl: '/',
  paths: {
    'npmcdn:*': 'https://npmcdn.com/*'
  }
});

System.config({
  transpiler: 'typescript', 
  typescriptOptions: { emitDecoratorMetadata: true },

  meta: {
    '*': {
      deps: [ 'zone.js', 'reflect-metadata' ]
    }
  }
});

System.config({
  packageConfigPaths: [
    "npmcdn:@*/*/package.json"
  ],

  map: {
    '@angular/core': 'npmcdn:@angular/core@'+angularVersion,
    '@angular/compiler': 'npmcdn:@angular/compiler@'+angularVersion,
    '@angular/common': 'npmcdn:@angular/common@'+angularVersion,
    '@angular/platform-browser': 'npmcdn:@angular/platform-browser@'+angularVersion,
    '@angular/platform-browser-dynamic': 'npmcdn:@angular/platform-browser-dynamic@'+angularVersion,
    'rxjs': 'npmcdn:rxjs@5.0.0-beta.6',
    'zone.js': 'npmcdn:zone.js@0.6.12',
    'reflect-metadata': 'npmcdn:reflect-metadata@0.1.3',
    "crypto": "@empty"
  },

  packages: {
    'app': {
      defaultExtension: 'ts',
      main: './index.ts'
    }
  }
});

我正在考虑使用 Angular2 的所有供应商部分预编译单个文件包的想法,以使其更快,并且只转换您的应用程序代码而不是库。

是否已经有解决方案?

最佳答案

Angular2 快速入门使用聚合 UMD 模块。你应该看看 live demo . 它更改 SystemJS 配置以加载 UMD 模块而不是每个单独的文件。这是文件的重要部分。

ngPackageNames.forEach(function(pkgName) {

    // Bundled (~40 requests):
    packages['@angular/'+pkgName] = { main: '/bundles/' + pkgName + '.umd.js', defaultExtension: 'js' };

    // Individual files (~300 requests):
    //packages['@angular/'+pkgName] = { main: 'index.js', defaultExtension: 'js' };
  });

关于typescript - 如何为 plunker 创建 Angular2 单个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38301644/

相关文章:

javascript - Angular 8 使用 ngIf 和异步管道来显示和隐藏 HTML 元素

javascript - 我们如何在 React JavaScript 中使用管道?

javascript - 哪个核心代码负责编译此插件中的 JavaScript

angular - 无法运行 angular 2 material plunker 示例

angular - Ionic 2/Typescript 构建失败 : Unexpected character '@'

javascript - 建议在何处存储 jsfiddle 或 plunker 的支持图像或文档文件

typescript - 有没有办法在 Typescript 中使用泛型强制类型动态相同?

node.js - 使用 Typescript 的 Nodejs 工作流管理

javascript - 使用 Deno 将 TypeScript 编译成 JavaScript

Angular 相同的元素在不同的屏幕尺寸上具有不同的绑定(bind)