/** * @description list component * @author 阿怪 * @date 2022/4/24 21:57 * @version v1.0.0 * * 江湖的业务千篇一律,复杂的代码好几百行。 * * todo click toggle active and emit click event */ import { defineComponent } from 'vue'; import MLi from '../li/MLi.tsx'; import { useList } from './useList.ts'; import { props } from './api.ts'; import './list.css'; import { ListProps } from './index'; export default defineComponent((_props: ListProps, { slots }) => { const props = _props as Required; return () => { const { baseRender, dataValidate } = useList(); if (!dataValidate(props.data)) { return; } const data = props.data; return
{ data.map(d => { return {slots.default ? slots.default({ data: d }) : baseRender(d)} ; }) }
; }; }, { name: 'MList', props, });