IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> uniapp手写单选 -> 正文阅读

[JavaScript知识库]uniapp手写单选

尽管uniapp 有 radio单选组件,但像一些情况下还是自己写出来好一些:

比如这里,有选择,删除,添加等功能。代码如下:

<view class="locaOne" v-for="(item,index) in localList">
					<view class="loLeft">
						<view class="checkView"  @click="clickCheck($event,index)"  :data-obj="item">
							<image v-show="item.is_default == 0" class="checkedFont" src="../../static/images/check.png"></image>
							<image v-show="item.is_default == 1" class="checkedFont" src="../../static/images/orderAccuess.png"></image>
						</view>
						<view class="addressName">{{item.address}}</view>
					</view>
					<view class="loRight" @click="deleteAddress($event,index)" :data-id="item.id">
						<image class="delete" src="../../static/images/guanbi.png"></image>
					</view>
				</view>
data:{    
    localList:[],
}				

这个地址列表是向后端请求来的;然后选择默认地址:

原理就是点击选中,is_default=1;然后其他都不选中,这就要把选中的追加在一个数组里,循环连个数组(双重循环)?that.localList[inItem].is_default = 0 ,表示点击之外的都属不选中状态。最后清空数组?indexArr。

clickCheck(e,index){
    let that = this;
				console.log(index);
				that.localList[index].is_default = 1;
				that.localList.forEach((item,loIndex)=>{
					that.indexArr.push(loIndex);
				})
				that.indexArr.splice(index,1);
				that.localList.forEach((item,loIndex)=>{
					that.indexArr.forEach((inItem,inIndex)=>{
						that.localList[inItem].is_default = 0
					})
				})
				that.indexArr=[];
            //是对接口内容
            …………
}

?删除的话线上与线下有一点区别,线上直接对接口,传id过去,删除成功后调一个查询即可。线下需要用splice移除那一列。

//删除地址
deleteAddress(e,index){
    let that = this;
	let id = e.currentTarget.dataset.id;
	console.log(id);
    uni.showModal({
	title: '提示',
	content: '这是一个模态弹窗',
	success: function (res) {
		if (res.confirm) {
			console.log('用户点击确定');
           that.localList.splice(index,1); //本地删除
		} else if (res.cancel) {
			console.log('用户点击取消');
		}
	}
});
}

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-03-06 12:53:24  更:2022-03-06 12:55:44 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 8:47:40-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码