gpt4 book ai didi

javascript - 未使用平台浏览器动态提供程序

转载 作者:行者123 更新时间:2023-11-29 22:52:44 27 4
gpt4 key购买 nike

我正在尝试使用文档方法在我的 Angular 应用程序 Bootstrap 之前设置我的 LOCALE_ID token :

import { LOCALE_ID } from '@angular/core';
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './app/app.module';

platformBrowserDynamic().bootstrapModule(AppModule, {
providers: [{provide: LOCALE_ID, useValue: 'fr-FR' }]
});

在我的 AppModule 的构造函数中检查 token 时,它似乎已被重置为默认值

export class AppModule {
constructor(@Inject(LOCALE_ID) private locale: string) {
console.log('Locale - App module', this.locale);
}
}

输出:Locale - App module en-US

我在这里错过了什么?

这是重现该问题的 Stackblitz: https://stackblitz.com/edit/angular-2rdtb6

最佳答案

您应该将提供程序传递给平台注入(inject)器而不是编译器注入(inject)器:

platformBrowserDynamic([ {provide: LOCALE_ID, useValue: 'fr-FR' }])
\/
extraProviders
.bootstrapModule(AppModule);

请注意,要在 stackblitz 中测试它,您必须重新加载应用程序,因为 Angular 只创建一次平台。

另见:

关于javascript - 未使用平台浏览器动态提供程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57184715/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com