UNPKG

cross-magic

Version:

跨平台公共模块

47 lines (39 loc) 990 B
import EnumRunTimePlatForm from '@/common/constants/runTimePlatform' export type RunTimeData = { runTimePlatform: EnumRunTimePlatForm } export interface IRuntime {} export abstract class RunTime { private _runTimeData!: RunTimeData constructor(runTimeData?: RunTimeData) { if (runTimeData) { this._runTimeData = runTimeData } } /** * 各个运行环境的全局宿主对象 * 如浏览器环境就是window * 微信小程序环境就是wx */ abstract get g(): any /** * 取运行时数据 */ get runTimeData(): RunTimeData { return this._runTimeData } /** * 设置运行时数据 */ set runTimeData(runTimeData: RunTimeData) { if (runTimeData && this._runTimeData !== runTimeData) { this._runTimeData = runTimeData } } /** * 运行平台 */ get runTimePlatform(): EnumRunTimePlatForm { return (this._runTimeData && this._runTimeData.runTimePlatform) || EnumRunTimePlatForm.web || '' } }