config.vue 1.39 KB
<template>
  <CollapseItem name="播放器配置" :expanded="true">
    <setting-item-box name="源地址" :alone="true">
      <setting-item v-for="(item, index) in optionData.dataset" :key="index">
        <n-input-group>
          <n-input v-model:value="item.url" size="small" placeholder="请输入源地址"></n-input>
          <n-button ghost @click="optionData.dataset.splice(index, 1)"> - </n-button>
        </n-input-group>
      </setting-item>
      <setting-item>
        <n-button v-if="optionData.dataset.length < 9" size="small" @click="optionData.dataset.push({ url: '' })">
          +
        </n-button>
      </setting-item>
    </setting-item-box>
    <setting-item-box name="排布">
      <setting-item>
        <n-select v-model:value="optionData.displayMode" size="small" :options="displayModeOptions"></n-select>
      </setting-item>
    </setting-item-box>
  </CollapseItem>
</template>

<script setup lang="ts">
import { PropType } from 'vue'
import { option } from './config'
import { CollapseItem, SettingItemBox, SettingItem } from '@/components/Pages/ChartItemSetting'

defineProps({
  optionData: {
    type: Object as PropType<typeof option>,
    required: true
  }
})

// 旋转方式
const displayModeOptions = [
  {
    value: 'singleGrid',
    label: '默认'
  },
  {
    value: 'fourGrid',
    label: '四宫格'
  },
  {
    value: 'nineGrid',
    label: '九宫格'
  }
]
</script>