captain-ui
Version:
有赞vue wap业务组件库
80 lines (70 loc) • 2.15 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports.default = void 0;
var _index = _interopRequireDefault(require("../../audio-controller/index"));
var _AudioPlayer = _interopRequireDefault(require("./AudioPlayer"));
var _default = {
render: function render() {
var _vm = this;
var _h = _vm.$createElement;
var _c = _vm._self._c || _h;
return _c('div', {
staticClass: "cap-showcase-audio"
}, [_c('audio-controller', _vm._b({
ref: "audioController",
on: {
"audio-play": _vm.onAudioPlay
},
scopedSlots: _vm._u([{
key: "default",
fn: function fn(props) {
return [_c('audio-player', _vm._b({
ref: "audioPlayer",
attrs: {
"audio-event-bus": props.audioEventBus,
"percentage": props.percentage,
"formated-current-time": props.formatedCurrentTime,
"formated-duration": props.formatedDuration,
"is-stop": props.isStop,
"is-pause": props.isPause,
"is-playing": props.isPlaying,
"is-loading": props.isLoading,
"is-loaded": props.isLoaded
}
}, 'audio-player', _vm.$attrs, false))];
}
}])
}, 'audio-controller', _vm.$attrs, false))], 1);
},
name: 'cap-showcase-audio',
components: {
AudioController: _index.default,
AudioPlayer: _AudioPlayer.default
},
inheritAttrs: false,
data: function data() {
return {
sliderInited: false
};
},
methods: {
onAudioPlay: function onAudioPlay() {
if (!this.sliderInited) {
this.$refs.audioPlayer.initSlider();
this.sliderInited = true;
}
this.$emit('showcase-audio-play');
},
pauseAudio: function pauseAudio() {
var audioController = this.$refs.audioController;
if (audioController.isPlaying) {
audioController.pause();
}
},
playAudio: function playAudio() {
this.$refs.audioController.play();
}
}
};
exports.default = _default;