Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

592
Vistas
No name was provided for external module

I created a data library, then tried to include the data library into another created library. Built fine, but received - "No name was provided for external module 'my-data' in output.globals – guessing 'myData'". What am I missing?

Complete steps to re-create.

  • ng new test-project --create=application=false
  • cd test-project
  • npm audit fix
  • ng g library my-data
  • ng g library my-core
  • ng g application address-book
  • ng build my-data
  • Then in my-core.module add import { MyDataModule } from 'my-data';
  • Then in my-core.module add imports: [MyDataModule]
  • ng build my-core

my-core.module.ts

import { NgModule } from '@angular/core';
import { MyCoreComponent } from './my-core.component';
import { MyDataModule } from 'my-data';

@NgModule({
  declarations: [MyCoreComponent],
  imports: [MyDataModule],
  exports: [MyCoreComponent]
})
export class MyCoreModule { }
  • After build get "No name was provided for external module 'my-data' in output.globals – guessing 'myData'"
over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

This is caused because you have an external dependency and you need to declare the name used so that the rollup knows what to look for when building the UMD bundle of my-core.

To fix the warning declare your my-data in ng-package.json

{
  "$schema": "../../node_modules/ng-packagr/ng-package.schema.json",
  "dest": "../../dist/my-core",
  "lib": {
    "entryFile": "src/public-api.ts",
    "umdModuleIds": {
      "my-data": "my-data"
    }
  }
}

I believe this is because since all dependencies are treated as external and your my-data isn't installed through something like npm you need to declare the UMD module id that's expected. See https://github.com/ng-packagr/ng-packagr/blob/master/docs/dependencies.md#resolving-umd-module-identifiers

over 4 years ago · Santiago Trujillo Denunciar

0

for anyone else coming here for this error and the above seems tedious to do OR you are just wondering what you changed to make you need this all of a sudden like me.

In my case (in order to make jest work) I had changed the following in tsconfig:

  "compilerOptions": {
    "module": "commonjs",
    "target": "esnext",
  "angularCompilerOptions": {
    "preserveWhitespaces": false
  }

back to:

  "compilerOptions": {
    "module": "esnext",
    "target": "es5"
}

I have no idea why this works, still reading through the rabbit hole provided by the above answerer and I am still trying to get both jest tests to work and my library to build. Anyway, I hope this helps someone.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda