<template>
    <view class="content">
        <view
            style="height: 100rpx;background: #ecf5ff;color: #909193;display: flex;justify-content: center;text-align: center;">
            <text style="font-size: 28rpx;">欢迎使用多功能组件uv-vtabs，这是头部内容，有头部内容必须传hdHeight参数</text>
        </view>
        <uv-vtabs :chain="chain" :list="list" :height="height" hdHeight="100rpx" @change="change">
            <template v-for="(item, index) in list">
                <uv-vtabs-item :index="index" :key="index">
                    <view class="item" v-for="(item2, index2) in item.childrens" :key="index2">
                        <view class="item-title">
                            <text class="text">{{ item2.name }}</text>
                        </view>
                        <view class="item-content">
                            <text class="text">{{ item2.desc }}</text>
                        </view>
                    </view>
                    <view class="gap" v-if="index < list.length - 1">
                        <uv-gap bg-color="#f1f1f1" height="4"></uv-gap>
                    </view>
                </uv-vtabs-item>
            </template>
            <uv-gap bg-color="#fff" height="600"></uv-gap>
        </uv-vtabs>
    </view>
</template>

<script>
const getList = [{
    name: 'uv-ui简介',
    childrens: [{
        name: 'uv-ui简介',
        desc: '1. uv-ui最初是在uview2.x的基础上进行改进优化，支持vue3等优化，最重要的是支持单独导入直接使用，无需在main.js中进行配置。\n\n2. uv-ui来源于社区，也回归到社区，正是有一群热爱uni-app生态的同学推着它前行，而我们也一如既往的承诺，uv-ui永久开源，永远免费。但是会在下载处进行广告配置，作为开发团队的研发费用的部分来源，所以希望大家理解。'
    }]
}, {
    name: 'uv-ui特点',
    childrens: [{
        name: '全端兼容',
        desc: 'uv-ui支持App（vue）、App（nvue）、H5、小程序、VUE2、VUE3，支持nvue原生渲染。uv-ui的组件都是多端自适应的，底层会抹平很多小程序平台的差异或bug。'
    }, {
        name: '集成工具',
        desc: 'uv-ui中的uv-ui-tools组件集成了强大的网络请求 HTTP 及常用的工具函数，无需自己再去寻找，并且直接挂载在uni上面，方便使用，只需要在mian.js中引入即可，更多工具请参考：https://www.uvui.cn/js/http.html。使用方式请参考：https://www.uvui.cn/components/setting.html。'
    }, {
        name: '主题扩展',
        desc: 'uv-ui中的uv-ui-tools组件下面的theme.scss为主题文件，直接在uni.scss中引入主题即可，可以根据自己的需求进行扩展。下面也有说明具体使用方式。使用方法请参考：https://www.uvui.cn/components/setting.html'
    }]
}, {
    name: '更新日志',
    badge: {
        show: true,
        value: 5
    },
    childrens: [{
        name: '更新日志',
        desc: 'uv-ui的重大更新在更新日志中都有所说明，如果在开发的过程中遇到文档不完善，可以提供给我们，我们会持续完善，非常感谢大家的支持。更新日志：https://www.uvui.cn/components/changelog.html'
    }]
}, {
    name: '设计规范',
    childrens: [{
        name: '设计规范',
        desc: '为了约束合成更多优秀的组件和模板，打造优质的体验，我们拟定了一些UI界面设计和建议。同时部分之间会有依赖，这是为了减少代码冗余的同时提高开发效率，模块化是我们的基础。如果大家有好的建议，可以提出进行改进。'
    }]
}, {
    name: '交流反馈',
    childrens: [{
        name: '交流反馈',
        desc: 'uv-ui为采用MIT许可证的开源项目，使用完全免费。欢迎加QQ群交流反馈，一起学习，共同进步。QQ群： 549833913'
    }]
}]
export default {
    data() {
        return {
            list: [],
            chain: true
        }
    },
    computed: {
        height() {
            return uni.getSystemInfoSync().windowHeight - uni.upx2px(100);
        }
    },
    onReady() {
        // 模拟接口请求数据
        uni.showLoading({
            title: '加载中'
        })
        setTimeout(() => {
            this.list = getList;
            uni.hideLoading();
        }, 500)
    },
    methods: {
        change(index) {
            console.log('选项改变：', index)
        }
    }
}
</script>
<style scoped lang="scss">
.header {
    padding: 30rpx;
    font-size: 30rpx;
    color: #333;
}

.item {
    padding: 10rpx 20rpx;

    &-title {
        .text {
            font-weight: 700;
            font-size: 32rpx;
            color: #111;
        }
    }

    &-content {
        padding: 20rpx 0;

        .text {
            line-height: 48rpx;
            font-size: 30rpx;
            color: #111;
            /* #ifndef APP-NVUE */
            word-break: break-all;
            /* #endif */
        }
    }
}

.gap {
    padding: 0 30rpx;
}
</style>