UNPKG

@voerkai18n/runtime

Version:
20 lines (19 loc) 841 B
import { FlexVars } from "flexvars" import type { VoerkaI18nScope } from ".." import { getByPath } from "flex-tools/object/getByPath" import { VoerkaI18nFormatterContext } from "@/formatter/types" export class InterpolatorMixin{ protected _flexVars? : FlexVars<VoerkaI18nFormatterContext> // 变量插值处理器,使用flexvars protected _initInterpolators(this:VoerkaI18nScope){ this._flexVars = new FlexVars<VoerkaI18nFormatterContext>({ filterContext:{ getConfig:(configKey?:string)=>{ const configs = (this.activeMessages['$config'] || {}) as any if(!configKey) return configs return getByPath(configs,configKey) }, scope:this } }) } }