abp.sweet-alert.js - v3.5.0 按钮没有本地化

abp.sweet-alert.js - No localization on buttons with v3.5.0

我有一个带有 ABP 3.5.0 ASP.NET Core 和 Angular 的项目,包括 Sweetalert 2.0.8。

按下删除按钮(例如角色或租户)时,确认对话框不会本地化按钮取消和是。我今天尝试获取新模板,同样的行为。

我已尝试按预期更改 abp.sweet-alert.js,但没有成功: https://github.com/aspnetboilerplate/aspnetboilerplate/issues/2708

在这里你可以看到今天的新模板。我试图获得确认按钮的意大利语翻译。正如您在菜单上看到的,'About' 已翻译。

SEE HERE PICTURE from fresh template

好消息,我解决了这个问题!

打开 root.module.ts 并将以下行添加到 AppPreBootstrap.run() 回调方法中。

abp.event.trigger('abp.dynamicScriptsInitialized');

root.module.ts 的最终外观如下

import { BrowserModule } from '@angular/platform-browser';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { NgModule, Injector, APP_INITIALIZER, LOCALE_ID } from '@angular/core';

import { AbpModule, ABP_HTTP_PROVIDER } from '@abp/abp.module';

import { SharedModule } from '@shared/shared.module';
import { ServiceProxyModule } from '@shared/service-proxies/service-proxy.module';
import { RootRoutingModule } from './root-routing.module';

import { AppConsts } from '@shared/AppConsts';
import { AppSessionService } from '@shared/session/app-session.service';
import { API_BASE_URL } from '@shared/service-proxies/service-proxies';

import { RootComponent } from './root.component';
import { AppPreBootstrap } from './AppPreBootstrap';
import { ModalModule } from 'ngx-bootstrap';


export function appInitializerFactory(injector: Injector) {
    return () => {

        abp.ui.setBusy();
        return new Promise<boolean>((resolve, reject) => {
            AppPreBootstrap.run(() => {
                abp.event.trigger('abp.dynamicScriptsInitialized');
                var appSessionService: AppSessionService = injector.get(AppSessionService);
                appSessionService.init().then(
                    (result) => {
                        abp.ui.clearBusy();
                        resolve(result);
                    },
                    (err) => {
                        abp.ui.clearBusy();
                        reject(err);
                    }
                );
            });
        });
    }
}

export function getRemoteServiceBaseUrl(): string {
    return AppConsts.remoteServiceBaseUrl;
}

export function getCurrentLanguage(): string {
    return abp.localization.currentLanguage.name;
}

@NgModule({
    imports: [
        BrowserModule,
        BrowserAnimationsModule,
        SharedModule.forRoot(),
        ModalModule.forRoot(),
        AbpModule,
        ServiceProxyModule,
        RootRoutingModule
    ],
    declarations: [
        RootComponent
    ],
    providers: [
        ABP_HTTP_PROVIDER,
        { provide: API_BASE_URL, useFactory: getRemoteServiceBaseUrl },
        {
            provide: APP_INITIALIZER,
            useFactory: appInitializerFactory,
            deps: [Injector],
            multi: true
        },
        {
            provide: LOCALE_ID,
            useFactory: getCurrentLanguage
        }
    ],
    bootstrap: [RootComponent]
})
export class RootModule {

}
  • 证明:

  • 问题:

https://github.com/aspnetboilerplate/module-zero-core-template/issues/200

  • 解决此问题:

https://github.com/aspnetboilerplate/module-zero-core-template/commit/8752cd1b4f33afc1c8330f9990f3a6395b14bfeb