UNPKG

olympus-r

Version:

一个力求简单易用的前端开发框架 #### 开发语言 TypeScript #### 核心架构 MVC #### 模块间通讯和解耦 采用事件机制,利用一个全局唯一的事件派发器进行模块间通讯,解耦模块间依赖 #### 表现层结构 使用桥接模式拆分接口与实现,达到一套核心驱动多套表现层的目的(目前支持DOM、Egret、PixiJS三种表现层),同时支持表现层的未来可扩展性 #### TypeScript装饰器注入 框架提供TypeScript装饰器注入功能,便捷获取托管对象。例如:

86 lines (85 loc) 1.96 kB
import IDisposable from '../../core/interfaces/IDisposable'; /** * @author Raykid * @email initial_r@qq.com * @create date 2017-10-30 * @modify date 2017-10-30 * * 音频接口 */ export default interface IAudio extends IDisposable { mute: boolean; /** * 加载音频 * * @param {string} url 音频URL * @memberof IAudio */ load(url: string): void; /** * 播放音频,如果音频没有加载则先加载再播放 * * @param {AudioPlayParams} params 音频播放参数 * @returns {void} * @memberof IAudio */ play(params: AudioPlayParams): void; /** * 暂停音频(不会重置进度) * * @param {string} url 音频URL * @memberof IAudio */ pause(url: string): void; /** * 停止音频(会重置进度) * * @param {string} url 音频URL * @memberof IAudio */ stop(url: string): void; /** * 停止所有音频 * * @memberof IAudio */ stopAll(): void; /** * 跳转音频进度 * * @param {string} url 音频URL * @param {number} time 要跳转到的音频位置,毫秒值 * @memberof IAudio */ seek(url: string, time: number): void; } export interface AudioPlayParams { /** * 音频地址 * * @type {string} * @memberof AudioPlayParams */ url: string; /** * 播放启动的时间戳 * * @type {number} * @memberof AudioPlayParams */ time?: number; /** * 是否循环,默认为false * * @type {boolean} * @memberof AudioPlayParams */ loop?: boolean; /** * 是否播放前关闭其他声音,默认为false,与important无法同时为true * * @type {boolean} * @memberof AudioPlayParams */ stopOthers?: boolean; }