uniapp把城市换成26个字母和城市排序

后端返回的数据

我们要得效果

js 复制代码
<template>
	<view>
		<view v-for="(value,key) in cities" :key="key">
			<view style="color: red;"> {{ key }} </view>
			 <view style="border: 1rpx solid black;">
				<text v-for="item in value" style="margin-right: 15rpx;"> {{ item }} </text>
			 </view>
		</view>
	</view>
</template>

<script>
	import { citysApi } from '@/api/city.api.js'
	export default {
		data() {
			return {
				cities: {}
			}
		},
		methods: {
		},
		async onLoad() {
			const res = await citysApi()
			let obj = {}
		
			for(let i = 65; i <= 90; i++) {
				let key = String.fromCharCode(i)
				obj[key] = []
			}
			res.data.forEach(item => {
				let key = item.city_pre.toLocaleUpperCase()
				obj[key].push(item.city_name)
			})
			// 把长度为0的项,删除掉
			Object.keys(obj).forEach(key => {
				if(obj[key].length === 0)  delete obj[key]
			})
			this.cities = obj
		}
	}
</script>

<style>

</style>
相关推荐
军军君0120 分钟前
Three.js基础功能学习十三:太阳系实例上
前端·javascript·vue.js·学习·3d·前端框架·three
xiaoqi9221 小时前
React Native鸿蒙跨平台如何实现分类页面组件通过searchQuery状态变量管理搜索输入,实现了分类的实时过滤功能
javascript·react native·react.js·ecmascript·harmonyos
打小就很皮...1 小时前
Tesseract.js OCR 中文识别
前端·react.js·ocr
qq_177767372 小时前
React Native鸿蒙跨平台实现应用介绍页,实现了应用信息卡片展示、特色功能网格布局、权限/联系信息陈列、评分展示、模态框详情交互等通用场景
javascript·react native·react.js·ecmascript·交互·harmonyos
2603_949462102 小时前
Flutter for OpenHarmony社团管理App实战:预算管理实现
android·javascript·flutter
wuhen_n2 小时前
JavaScript内存管理与执行上下文
前端·javascript
Hi_kenyon2 小时前
理解vue中的ref
前端·javascript·vue.js
jin1233223 小时前
基于React Native鸿蒙跨平台地址管理是许多电商、外卖、物流等应用的重要功能模块,实现了地址的添加、编辑、删除和设置默认等功能
javascript·react native·react.js·ecmascript·harmonyos
2501_920931703 小时前
React Native鸿蒙跨平台医疗健康类的血压记录,包括收缩压、舒张压、心率、日期、时间、备注和状态
javascript·react native·react.js·ecmascript·harmonyos
落霞的思绪4 小时前
配置React和React-dom为CDN引入
前端·react.js·前端框架