<template>
  <div class="demo">
    <h2>基础用法</h2>
    <nut-picker :list-data="listData1" @confirm="confirm">
      <nut-cell title="请选择城市" :desc="desc"></nut-cell>
    </nut-picker>
    <h2>多列样式</h2>
    <nut-cell title="请选择时间" :desc="desc2"></nut-cell>
    <h2>多级联动</h2>
    <nut-cell title="请选择地址" :desc="desc3"></nut-cell>

    <!-- <nut-picker
      v-model:visible="show2"
      :list-data="listData2"
      title="多列选择"
      @confirm="confirm2"
      @close="close"
    ></nut-picker>
    <nut-picker
      v-model:visible="show3"
      :list-data="listData3"
      title="地址选择"
      @confirm="confirm3"
    ></nut-picker> -->
  </div>
</template>
<script lang="ts">
import { toRefs, ref } from 'vue';
import { createComponent } from './../../../../../../packages/utils/create';
import Picker from './index.taro.vue';
import Cell from './../cell/index.taro.vue';
const { createDemo } = createComponent('picker');
export default createDemo({
  components: {
    'nut-picker': Picker,
    'nut-cell': Cell
  },
  props: {},
  setup() {
    const listData1 = [
      '南京市',
      '无锡市',
      '海北藏族自治区',
      '北京市',
      '连云港市',
      '浙江市',
      '江苏市'
    ];
    const listData2 = [
      {
        values: ['周一', '周二', '周三', '周四', '周五'],
        defaultIndex: 2
      },
      // 第二列
      {
        values: ['上午', '下午', '晚上'],
        defaultIndex: 1
      }
    ];
    const listData3 = [
      {
        text: '浙江',
        children: [
          {
            text: '杭州',
            children: [{ text: '西湖区' }, { text: '余杭区' }]
          },
          {
            text: '温州',
            children: [{ text: '鹿城区' }, { text: '瓯海区' }]
          }
        ]
      },
      {
        text: '福建',
        children: [
          {
            text: '福州',
            children: [{ text: '鼓楼区' }, { text: '台江区' }]
          },
          {
            text: '厦门',
            children: [{ text: '思明区' }, { text: '海沧区' }]
          }
        ]
      }
    ];
    const show = ref(false);
    const show2 = ref(false);
    const show3 = ref(false);
    const showList = [show, show2, show3];
    const desc = ref(listData1[0]);
    const desc2 = ref(
      `${listData2[0].values[listData2[0].defaultIndex]} ${
        listData2[1].values[listData2[1].defaultIndex]
      }`
    );
    const desc3 = ref(
      `${listData3[0].text}
      ${listData3[0].children[0].text}
      ${listData3[0].children[0].children[0].text}`
    );
    const descList = [desc, desc2, desc3];
    return {
      listData1,
      listData2,
      listData3,
      show,
      show2,
      show3,
      desc,
      desc2,
      desc3,
      open: (index: number) => {
        showList[index - 1].value = true;
      },
      confirm: (res: any) => {
        desc.value = res;
      },
      confirm2: (res: any) => {
        desc2.value = res.join(' ');
      },
      confirm3: (res: any) => {
        desc3.value = res.join(' ');
      }
    };
  }
});
</script>
