app/Resources/static-src/app/js/player/audio-player.js

(开头部分) 1KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

import Emitter from 'component-emitter';
class AudioPlayer extends Emitter {

  constructor(options) {
    super();
    this.options = options;
    this.playMode = 'sequence'; //默认开启
    this.player = {};
    this.setup();
  }

  setup() {
    let element = this.options.element;

    var self = this;

    let extConfig = {};

    if (self.options.enablePlaybackRates) {
      extConfig = Object.assign(extConfig, {
        playbackRates: ['0.8', '1.0', '1.25', '1.5', '2.0']
      });
    }

    if (self.options.statsInfo) {
      var statsInfo = self.options.statsInfo;
      extConfig = Object.assign(extConfig, {
        statsInfo: {
          accesskey: statsInfo.accesskey,
          globalId: statsInfo.globalId,
          userId: statsInfo.userId,
          userName: statsInfo.userName
        }
      });
    }
    
    const remeberLastPos = self.options.customPos < self.options.mediaLength;

    //范晓铖要改SDK,消除string和int的奇怪判断
    if (remeberLastPos && self.options.customPos) {
      self.options.customPos = self.options.customPos.toString();
    } else if (!self.options.customPos) {
      self.options.customPos = 0;
    } else {
      self.options.customPos = '0';
    }

    extConfig = Object.assign(extConfig, {
      id: 'lesson-player',
      playlist: self.options.url,
      template: self.options.content,
      autoplay: true, //音频自动播放开启
      customPos: self.options.customPos,
      disableModeSelection: self.options.disableModeSelection,
      remeberLastPos: remeberLastPos,
      sequentialMode: true,
    });
    var player = new AudioPlayerSDK(extConfig);

    player.on('ready', function(e) {

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。