|
@@ -1,4 +1,4 @@
|
|
|
-import { defineComponent, reactive, ref, toRefs } from 'vue'
|
|
|
+import { defineComponent, reactive, ref, toRefs, watch } from 'vue'
|
|
|
import { Button, Slider } from 'vant'
|
|
|
import classnames from 'classnames'
|
|
|
import detailState from '/src/pages/detail/state'
|
|
@@ -7,10 +7,12 @@ import styles from './speed.module.less'
|
|
|
import iconMinus from './icons/icon-minus.svg'
|
|
|
import iconPlus from './icons/icon-plus.svg'
|
|
|
import iconresetMinus from './icons/icon-resetMinus.svg'
|
|
|
+import runtime, * as RuntimeUtils from '/src/pages/detail/runtime'
|
|
|
|
|
|
const state = reactive({
|
|
|
speed: 90,
|
|
|
showHint: false,
|
|
|
+ maxSpeed: 315,
|
|
|
})
|
|
|
|
|
|
export default defineComponent({
|
|
@@ -58,6 +60,7 @@ export default defineComponent({
|
|
|
|
|
|
const minusSpeed = () => {
|
|
|
state.speed = Math.max(state.speed - 1, 45)
|
|
|
+ state.speed = Math.min(state.speed, 270)
|
|
|
props.changed(state.speed)
|
|
|
}
|
|
|
|
|
@@ -65,7 +68,14 @@ export default defineComponent({
|
|
|
state.speed = Math.min(state.speed + 1, 270)
|
|
|
props.changed(state.speed)
|
|
|
}
|
|
|
-
|
|
|
+ watch(
|
|
|
+ () => runtime.playIngSpeed,
|
|
|
+ (val) => {
|
|
|
+ if (val) {
|
|
|
+ state.maxSpeed = runtime.playIngSpeed > 270 ? runtime.playIngSpeed + 45 : 315;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ )
|
|
|
return () => (
|
|
|
<div class={styles['speed-change']}>
|
|
|
<div class={styles.speed}>
|
|
@@ -77,21 +87,24 @@ export default defineComponent({
|
|
|
type="primary"
|
|
|
size="mini"
|
|
|
round
|
|
|
- disabled={state.speed == 270}
|
|
|
+ disabled={state.speed >= 270}
|
|
|
onClick={plusSpeed}
|
|
|
/>
|
|
|
<Slider
|
|
|
class={styles.slider}
|
|
|
- max={270}
|
|
|
+ max={runtime.playIngSpeed > 270 ? runtime.playIngSpeed : 270}
|
|
|
min={45}
|
|
|
barHeight="3px"
|
|
|
buttonSize="18px"
|
|
|
- modelValue={315 - state.speed}
|
|
|
- onUpdate:modelValue={(speed: number) => updateSpeed(315 - speed)}
|
|
|
+ modelValue={state.maxSpeed - state.speed}
|
|
|
+ onUpdate:modelValue={(speed: number) => {
|
|
|
+ // console.log('改变速度',speed,runtime.playIngSpeed,runtime.speed)
|
|
|
+ //updateSpeed(315 - speed)
|
|
|
+ }}
|
|
|
step="1"
|
|
|
vertical
|
|
|
activeColor="#ebedf0"
|
|
|
- onChange={(speed: number) => changeSpeed(315 - speed)}
|
|
|
+ onChange={(speed: number) => changeSpeed(state.maxSpeed - speed)}
|
|
|
onDragStart={onDragStart}
|
|
|
onDragEnd={onDragEnd}
|
|
|
vSlots={{
|
|
@@ -112,7 +125,7 @@ export default defineComponent({
|
|
|
type="primary"
|
|
|
size="mini"
|
|
|
round
|
|
|
- disabled={state.speed == 45}
|
|
|
+ disabled={state.speed <= 45}
|
|
|
onClick={minusSpeed}
|
|
|
/>
|
|
|
<Button
|