Yva*_*van 6 webpack angular angular13
我从角度 12 移动到角度 13,并且出现了新错误。所以基本上我曾经通过导入区域设置文件来加载用户的文化。
const localeUri = `@angular/common/locales/${localeId}.js`;
return import(localeUri).then((module) => {
logger.debug("Culture Angular : '" + localeId + "'");
registerLocaleData(module.default);
}).catch((err) => {
logger.fatal("culture not defined for angular", err);
});
Run Code Online (Sandbox Code Playgroud)
该解决方案过去适用于 Angular12,但不再适用于 Angular13。Webpack 找不到任何语言环境。我尝试了 github 上找到的一些解决方案,但没有任何积极的结果
https://github.com/highlightjs/highlight.js/issues/3223#issuecomment-953337602
https://github.com/angular/angular-cli/issues/22154
有什么解决办法吗?
小智 6
.js通过更改我们导入的路径并更改为来设法使其工作.mjs
前:
import(
/* webpackInclude: /(de|de-AT|en|en-GB)\.js$/ */
`@angular/common/locales/${locale}.js`
).then((module) => {
registerLocaleData(module.default);
});
Run Code Online (Sandbox Code Playgroud)
后:
import(
/* webpackInclude: /(de|de-AT|en|en-GB)\.mjs$/ */
`../../../../../../node_modules/@angular/common/locales/${locale}.mjs`
).then((module) => {
registerLocaleData(module.default);
});
Run Code Online (Sandbox Code Playgroud)
使用 Angular 13.1.1 和 NX 13.4.2
这里也提到了解决方案:https ://github.com/angular/angular-cli/issues/22154
ebr*_*ult -1
您必须从@angular/common/locales/global/现在开始导入,并且registerLocaleData不再需要了。
Angular 13 之前:
import { registerLocaleData } from '@angular/common';
import localeFr from '@angular/common/locales/fr';
registerLocaleData(localeFr, 'fr-FR');
Run Code Online (Sandbox Code Playgroud)
使用 Angular 13:
import '@angular/common/locales/global/fr';
// and you can use fr-FR whenever you want
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5414 次 |
| 最近记录: |