当前位置: 首页 > news >正文

网站建设运维情况医疗网站平台建设方案

网站建设运维情况,医疗网站平台建设方案,资阳优化团队招商,怎么让谷歌收录我的网站省市区三级联动选择是个很频繁的需求,但是查看了市面上很多插件不是太老不维护就是不满足需求,就试着实现一个 这个功能无任何依赖插件 功能略简单,但能实现需求 核心代码也尽力控制在了60行左右 pca-code.json树型数据来源 Administrative-d…

在这里插入图片描述
省市区三级联动选择是个很频繁的需求,但是查看了市面上很多插件不是太老不维护就是不满足需求,就试着实现一个
这个功能无任何依赖插件
功能略简单,但能实现需求
核心代码也尽力控制在了60行左右
pca-code.json树型数据来源 Administrative-divisions-of-China
下面只贴了省市区选择的功能,全部代码可参考github area分支

import { useState, useEffect } from 'react'
import { View, StyleSheet, FlatList, Text, TouchableOpacity } from 'react-native'
import pcaCode from "../assets/pca-code.json"export default () => {const [selected, setSelected] = useState([]) //选择过的省市区const [options, setOptions] = useState([pcaCode]) //每一级的数据const [level, setLevel] = useState(0) // 当前展示第几级useEffect(() => {console.log(selected)}, [selected])const renderItem = ({ item }) => (<TouchableOpacity style={styles.option} onPress={() => activeItem(item)}><Text style={[styles.option_text, isActive(item.code) && styles.option_text_active]}>{item.name}</Text>{isActive(item.code) && <View style={styles.option_icon} />}</TouchableOpacity >)const isActive = (code) => selected.some(item => item.code == code)const activeItem = (item) => {setSelected((prev) => {const newSelected = [...prev]newSelected[level] = { code: item.code, name: item.name }return newSelected.slice(0, level + 1)})if (level < 2) {const nextLevel = level + 1setLevel(nextLevel)setOptions((prev) => {const nextOptions = [...prev]nextOptions[nextLevel] = item.childrenreturn nextOptions})}}const PanelTab = () => {const tabs = selected.length < 3 ? selected.concat({ name: "请选择" }) : selectedreturn (<View style={styles.tab}>{tabs.map((item, index) => {return (<View style={styles.tab_item} key={index}><TouchableOpacity onPress={() => setLevel(index)}><Text style={item.code ? styles.tab_item_text : styles.tab_item_text_gray}>{item.name}</Text></TouchableOpacity>{level == index && <View style={styles.tab_item_line} />}</View>)})}</View>)}return (<><PanelTab /><FlatList style={styles.flat} data={options[level]} renderItem={renderItem} keyExtractor={item => item.code} /></>)
}const styles = StyleSheet.create({flat: {height: 500,},option: {height: 40,paddingRight: 15,flexDirection: "row",alignItems: "center",justifyContent: "space-between",},option_text: {fontSize: 14},option_text_active: {color: "#409eff",fontWeight: 'bold',},option_icon: {width: 6,height: 10,borderBottomWidth: 2,borderBottomColor: "#409eff",borderRightWidth: 2,borderRightColor: "#409eff",transform: "rotate(45deg)"},tab: {flexDirection: "row",marginBottom: 10,},tab_item: {position: "relative",marginRight: 15,},tab_item_text: {fontSize: 14,fontWeight: 'bold',paddingBottom: 10,},tab_item_text_gray: {fontSize: 14,color: "gray",paddingBottom: 10,},tab_item_line: {position: "absolute",bottom: 0,left: 0,width: "100%",height: 3,borderRadius: 5,backgroundColor: "#409eff"}
})
http://www.yayakq.cn/news/691879/

相关文章:

  • 诗人做的网站打开免费百度啊
  • 深圳招聘网站找工作wordpress慢数据库
  • 中国采购网官方网站网站分屏布局设计
  • 怎样建设单位网站esc怎么做网站
  • 广告类的网站谷歌浏览器官网下载手机版
  • 做驾考学时在哪个网站wordpress 媒体模版
  • 网站后台传图片怎么部署wordpress
  • 物流公司做网站需求建设工程信息查询
  • wordpress通知站点360搜索深圳网站设计教程
  • 贵阳做网站的公司北京网站建设公司如何排版
  • 南昌哪家网站开发公司好网站设计怎么好看
  • 阿里云网站域名绑定做网站哪种语言好
  • 深圳市南山区住房和建设局网站官网蓝色高科技网站模板
  • 中山市饮食网站建设西安找工作哪个网站好
  • 网站建设 中企动力宜昌学校网站框架
  • 制作网站一般使用的软件有哪些桂林企业网站建设
  • 自己的网站首页背景怎么做微信运营服务商
  • 装修公司网站dede模板杭州网站建设_数据库开发网站_大数据网站开发
  • 手机网站整站模板下载工具网站建设服务市场分析
  • 建立网站的平台搜钛建站
  • 网站建设官方商城wordpress调用用户名
  • 视频当背景图片 网站开发电影网站权重怎么做
  • 建立网站的几个步骤上海单位建设报建网站
  • 设计一个官方网站推广广告中山网站建设推广
  • 用树莓派做网站服务器wordpress 加子目录
  • 科技网站推荐怀集住房和城乡建设部网站
  • 贵阳网站开发招聘做网站和推广工资多少
  • 江西 商城网站开发国外免费空间申请
  • 高端大气网站推荐网站建设前期
  • 东莞公司品牌网站建设学校网页设计方案