视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
微信小程序实现单选功能
2020-11-27 22:05:43 责编:小采
文档


初次接触js弄了好长时间才出来效果,但是还是觉的不做梦完美,希望有更好的方式进行交流;实现效果如下:

虽说这个小功能但是对于我这个新手来说还是有点难;具体代码如下:

WXML:

<view class="backgrout-bj">
 <view class="header">
 最多可增加4个功能入口
 </view>
 <view>
 <block wx:for="{{model}}">
 <view class="model-list" bindtap="selectClick" id="{{index}}">
 <view>
 <image class="middle-img" src="{{item.image}}"></image>
 </view>
 <view class="middle-title">
 <view><text>{{item.title}}</text></view>
 <view class="middle-sub"><text>{{item.sub_title}}</text></view>
 </view>
 <!--<view hidden="{{item.selectImage}}">
 <image src="../image/xuanze.png" class="seletedImage"></image>
 </view>-->
 <view wx:if="{{item.selectImage==true}}">
 <image src="../image/xuanze.png" class="seletedImage"></image>
 </view>
 </view>
 
 </block>
 </view>
</view>

从大的分科分为两个大块一个是上面的header  剩下的列表是另外一个部分,列表中又分为若干个小块,本打算写个模版,但是感觉这样更清晰 

WXSS:

.backgrout-bj{
 
 flex-wrap: wrap; 
 
}
.backgrout-bj .header{
 
 display: block;
 font-size: 13px;
 text-align: center;
 color: orange;
 padding: 10px;
 width: 100%;
}
.model-list{
 
 border-bottom: 1px solid lightgrey;
 display: flex;
 align-items: center;
}
 
.middle-img{
 padding: 10px;
 width: 70px;
 height: 70px;
 display: block;
 flex: 1;
 overflow: hidden;
}
.middle-title{
 margin: 10px;
 display: block;
 
 
}
.middle-sub{
 font-size: 14px;
 color: lightgray;
 margin-top: 10px;
}
 
.seletedImage{
 width: 20px;
 height: 20px;
}

可能有些乱,希望大牛纠正;

JS:

Page({
 data:{
 // text:"这是一个页面"
 model:[
 { 
 image:'../image/guapai_icon.png',
 title:'挂牌',
 sub_title:'进行松香交易,松香买卖。。',
 selectImage:false
 },
 { 
 image:'../image/tianjia_maoyi.png',
 title:'贸易',
 sub_title:'根据需求,快速的为您提供服务',
 selectImage:true
 }
 ]
 
 },
 selectClick:function(event){
 
 // this.data.model[event.currentTarget.id].selectImage
 
 for(var i = 0; i < this.data.model.length;i++){
 if(event.currentTarget.id == i){
 
 
 this.data.model[i].selectImage = true 
 }
 else
 {
 
 this.data.model[i].selectImage = false
 }
 
 }
 this.setData(this.data)
 
 },
 onLoad:function(options){
 // 页面初始化 options为页面跳转所带来的参数
 
 },
 onReady:function(){
 // 页面渲染完成
 },
 onShow:function(){
 // 页面显示
 },
 onHide:function(){
 // 页面隐藏
 },
 onUnload:function(){
 // 页面关闭
 }
})

主要思路为循环数组的所有原素,当点击的id和i值想等的时候,就把里面的selectImage属性改为true 其他的改为false,个人感觉这种写法有一定的缺陷,希望有大牛指正。

下载本文
显示全文
专题