oak-frontend-base/lib/features/locales.d.ts

46 lines
1.6 KiB
TypeScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { EntityDict } from 'oak-domain/lib/types';
import { Feature } from '../types/Feature';
import { EntityDict as BaseEntityDict } from 'oak-domain/lib/base-app-domain';
import { Cache } from './cache';
import { LocalStorage } from './localStorage';
import { Environment } from './environment';
import { Scope, TranslateOptions } from 'i18n-js';
export declare class Locales<ED extends EntityDict & BaseEntityDict> extends Feature {
static REFRESH_STALE_INTERVAL: number;
private cache;
private localStorage;
private environment;
private language;
private defaultLng;
private i18n;
private initializeLng;
constructor(cache: Cache<ED>, localStorage: LocalStorage, environment: Environment, defaultLng: string);
private detectLanguage;
private reloadDataset;
loadServerData(nss: string[]): Promise<void>;
/**
* 当发生key缺失时向服务器请求最新的i18n数据对i18n缓存数据的行为优化放在cache中统一进行
* @param ns
*/
private loadData;
/**
* 暴露给小程序的Wxs调用
* @param key
*/
loadMissedLocale(key: string): void;
/**
* translate函数这里编译器会在params里注入两个参数 #oakNamespace 和 #oakModule用以标识文件路径
* @param key
* @param params
* @returns
*/
t(key: string, params?: TranslateOptions): string;
getState(): {
lng: string;
defaultLng: string;
dataset: import("i18n-js").Dict;
version: number;
};
hasKey(key: Scope, params?: TranslateOptions): string;
}