You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
	
	
		
		
			
	
    
		
			
				
					
						                                                                                                                               | 
						 | 
						<template>	<view class="u-drawdown">		<view			class="u-dropdown__menu"			:style="{				height: $u.addUnit(height)			}"			ref="u-dropdown__menu"		>			<view				class="u-dropdown__menu__item"				v-for="(item, index) in menuList"				:key="index"				@tap.stop="clickHandler(item, index)"			>				<view class="u-dropdown__menu__item__content">					<text						class="u-dropdown__menu__item__content__text"						:style="[index === current ? activeStyle : inactiveStyle]"					>{{item.title}}</text>					<view						class="u-dropdown__menu__item__content__arrow"						:class="[index === current && 'u-dropdown__menu__item__content__arrow--rotate']"					>						<u-icon							:name="menuIcon"							:size="$u.addUnit(menuIconSize)"						></u-icon>					</view>				</view>			</view>		</view>		<view class="u-dropdown__content">			<slot />		</view>	</view></template>
<script>	import props from './props.js';	/**	 * Dropdown  	 * @description 	 * @tutorial url	 * @property {String}	 * @event {Function}	 * @example	 */	export default {		name: 'u-dropdown',		mixins: [uni.$u.mixin, props],		data() {			return {				// �˵�����
				menuList: [],				current: 0			}		},		computed: {				},		created() {			// ��������������(u-dropdown-item)��this��������data��������������������С����������ѭ�����ö�����
			this.children = [];		},		methods: {			clickHandler(item, index) {				this.children.map(child => {					if(child.title === item.title) {						// this.queryRect('u-dropdown__menu').then(size => {
							child.$emit('click')							child.setContentAnimate(child.show ? 0 : 300)							child.show = !child.show						// })
					} else {						child.show = false						child.setContentAnimate(0)					}				})			},			// ��ȡ��ǩ�ijߴ�λ��
			queryRect(el) {				// #ifndef APP-NVUE
				// $uGetRectΪuView�Դ��Ľڵ���ѯ�����������ĵ����ܣ�https://www.uviewui.com/js/getRect.html
				// �����ڲ�һ����this.$uGetRect��������Ϊthis.$u.getRect�����߹���һ�£����Ʋ�ͬ
				return new Promise(resolve => {					this.$uGetRect(`.${el}`).then(size => {						resolve(size)					})				})				// #endif
							// #ifdef APP-NVUE 
				// nvue�£�ʹ��domģ����ѯԪ�ظ߶�
				// ����һ��promise���õ��ô˷�����������ʹ��then�ص�
				return new Promise(resolve => {					dom.getComponentRect(this.$refs[el], res => {						resolve(res.size)					})				})				// #endif
			},		},	}</script>
<style lang="scss">	@import '../../libs/css/components.scss';
	.u-dropdown {
		&__menu {			@include flex;
			&__item {				flex: 1;				@include flex;				justify-content: center;
				&__content {					@include flex;					align-items: center;				}			}		}	}</style>
  |