android - weex 的list 有選取事件麼
phpcn_u1582
phpcn_u1582 2017-05-16 13:28:43
0
2
669

如題,我想實現點擊一個cell 那個cell就變色與其他的cell區分開 而且是單選 或者說list該怎麼根據index來獲取cell對象

phpcn_u1582
phpcn_u1582

全部回覆(2)
滿天的星座

在css中使用 active偽類

<template>
  <p>
    <list class="list">
      <cell
        v-for="(v,i) in rows"
        append="tree"
        :index="i"
        :key="i"
        class="row">
        <p class="item">
          <text class="item-title">row {{v.id}}</text>
        </p>
      </cell>
    </list>
</text>
  </p>
</template>

<style scoped>
  .list {
    height:850px
  }
  .count {
    font-size: 48px;
    margin:10px;
  }
  .indicator {
    height: 40px;
    width: 40px;
    color:#45b5f0;
  }
  .row {
    width: 750px;
  }
  .item {
    justify-content: center;
    border-bottom-width: 2px;
    border-bottom-color: #c0c0c0;
    height: 100px;
    padding:20px;
  }
  .item:active {
     background-color: #00BDFF;
   }
  .item-title {
  }
</style>

具體參考http://weex.apache.org/cn/ref...

过去多啦不再A梦

要達到類似單選的效果,大概可以這麼做:
透過目前行的selected欄位來判斷是否被選中,從而改變background-color
Dom結構如下:

<list>
<cell v-for="(item,index) in listData" v-bind:style="{'background-color':(item.selected?'#dddddd':'#ffffff')}" @click="onSelected(item,index)">
<p>
<text>{{item.text}}</text>
</p>
</cell>
</list>

js結構如下:

data: {
    "listData": [
                {'text': '开发者头条', selected: false},
                {'text': '腾讯新闻', selected: false},
                {'text': '搜狐娱乐', selected: false},
                {'text': '优酷视频', selected: false}
            ]
},
methods:{
    "onSelected":function(item,index){
         if (item.selected) {
           this.listData[index].selected = false;
         } else {
           this.listData[index].selected = true;
         }
    }
}

希望能夠幫助你

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板