• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

974
Vistas
Módulo no encontrado: Error: la ruta del paquete ./locales no se exporta del paquete después de la actualización angular a 13

TypeScript 2.4 agregó soporte para expresiones de importación dinámica (), que nos permiten cargar y ejecutar módulos ECMAScript de manera asincrónica a pedido.

Tratando de importar dinámicamente la localización pero enfrentando el problema con la exportación

 Module not found: Error: Package path ./locales is not exported from package ....\node_modules\@angular\common (see exports field in .....\node_modules\@angular\common\package.json)

tengo el siguiente codigo

 let angularLocale = convertAbpLocaleToAngularLocale(abp.localization.currentLanguage.name); import(`@angular/common/locales/${angularLocale}.js`) .then(module => { registerLocaleData(module.default); NgxBootstrapDatePickerConfigService.registerNgxBootstrapDatePickerLocales().then(_ => { resolve(true); abp.ui.clearBusy(); }); }, reject);

No estoy seguro de cómo puedo exportar esto, funcionaba bien con angular 12.

about 3 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Agregar un sistema no funcionó

 let angularLocale = convertAbpLocaleToAngularLocale(abp.localization.currentLanguage.name); System.import(`@angular/common/locales/${angularLocale}.js`) .then(module => { registerLocaleData(module.default); NgxBootstrapDatePickerConfigService.registerNgxBootstrapDatePickerLocales().then(_ => { resolve(true); abp.ui.clearBusy(); }); }, reject);

Referencia: https://github.com/angular/angular/issues/20487

Actualizar

No necesitamos usar System.import en estos días... Creo que una expresión de importación ES dinámica podría ser suficiente...

 let angularLocale = convertAbpLocaleToAngularLocale(abp.localization.currentLanguage.name); import(`@angular/common/locales/${angularLocale}.js`).then(module => registerLocaleData(module.default));

Con el código anterior, todavía me enfrento a la excepción. En ese caso, estaba presionando angular/angular-cli#22154; este es un error del paquete web. https://github.com/angular/angular/issues/20487 https://github.com/angular/angular-cli/issues/22154

 import( /* webpackExclude: /\.d\.ts$/ */ /* webpackMode: "lazy-once" */ /* webpackChunkName: "i18n-extra" */ `@/../node_modules/@angular/common/locales/${angularLocale}.mjs`)
about 3 years ago · Santiago Trujillo Denunciar

0

Como se menciona en el problema https://github.com/angular/angular-cli/issues/22154 , debe actualizar la ruta de importación con /node_modules/@angular/common/locales/${locale}.mjs .

El siguiente código me funciona en mi proyecto AspNetZero después de actualizar a la versión angular 13.

NOTA: Asegúrese de reiniciar el comando "ng serve" después de estos cambios para que el paquete web haga su magia.

 async function registerLocales(resolve: (value?: boolean | Promise<boolean>) => void, reject: any, spinnerService: NgxSpinnerService) { if (shouldLoadLocale()) { let angularLocale = convertAbpLocaleToAngularLocale(abp.localization.currentLanguage.name); await import(`/node_modules/@angular/common/locales/${ angularLocale }.mjs`) .then(module => { registerLocaleData(module.default); NgxBootstrapDatePickerConfigService.registerNgxBootstrapDatePickerLocales().then(_ => { resolve(true); spinnerService.hide(); }); }, reject); } else { NgxBootstrapDatePickerConfigService.registerNgxBootstrapDatePickerLocales().then(_ => { resolve(true); spinnerService.hide(); }); }

}

about 3 years ago · Santiago Trujillo Denunciar

0

Tuve el mismo problema que solucioné modificando la ruta de importación agregando 'node_modules/...'
código original:

 import(`@angular/common/locales/${angularLocale}.js`)

código fijo

 import(`/node_modules/@angular/common/locales/${angularLocale}.js`)
about 3 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 Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda