jvandemo/generator-angular2-library

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

Open

#135 创建于 2017年6月20日

在 GitHub 查看
 (4 评论) (0 反应) (0 负责人)JavaScript (754 star) (122 fork)batch import
Type: Questionhelp wanted

描述

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?

贡献者指南

Angular Universal (Server side rendering) - how use *.umd.js for node.js · jvandemo/generator-angular2-library#135 | Good First Issue