/** * 资产的服务,api请求和ws推送更新 */ import { BehaviorSubject } from "rxjs"; export interface BalanceItemProps { /** 币种 */ currency: string; /** 总资产 */ marginAvailable: string; /** 可用保证金 */ marginEquity: string; /** 冻结保证金 */ marginFrozen: string; /** 最大可转出余额 */ marginPosition: string; /** 持仓保证金(当前持有仓位所占用的保证金) */ maxWithdrawAmount: string; /** 为实现 */ marginUnPnl: string; } export class BalancesService { static _instance: BalancesService; static get instance(): BalancesService { if (BalancesService._instance) { return BalancesService._instance; } BalancesService._instance = new BalancesService(); return BalancesService._instance; } balances$ = new BehaviorSubject([]); currentBalance$ = new BehaviorSubject({} as BalanceItemProps); formatAccountBalance(arr: BalanceItemProps[]) { // todo 不确定是否需要格式化等 this.balances$.next(arr); } }