jvandemo/generator-angular2-library

Angular Universal (Server side rendering) - how use *.umd.js for node.js

オープン

#135 opened on 2017/06/20

 (4 件のコメント) (0 件のリアクション) (0 人の担当者)JavaScript (116 件のフォーク)batch import
Type: Questionhelp wanted

Repository metrics

Stars
 (740 個のスター)
PR merge metrics
 (30d に merged PR はありません)

説明

When I launch my application with angular universal i use this repo: https://github.com/evertonrobertoauler/cli-universal-demo

$ node dist/server.js 
~/api-lib/index.js:1
(function (exports, require, module, __filename, __dirname) { import { Component, Directive, ElementRef, Injectable, NgModule, Pipe } from '@angular/core';
                                                              ^^^^^^

SyntaxError: Unexpected token import

I see that when run build, lib is created in es2015 As in the file tsconfig.es5.json we have "module": "es2015"

But in the file api-lib.umd.js - this is what I need

In my application, I connect the library like this import {SampleModule, SampleService} from 'api-lib';

There is a solution in my project to make webpack compile into es5 In webpack.config.js

externals: [nodeExternals({
    whitelist: [
      /^api-lib/
    ]
  })],

But it seems to me not right, I do not understand how I can get my application to connect here is the api-lib.umd.js file when compiled Or should it automatically do this?

コントリビューターガイド