国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

微信小程序下拉框組件運(yùn)用方法

3403771864 / 559人閱讀

  在項目開發(fā)中,會要求在小程序有時使用下拉框選項。在通常思路就是用 picker 組件實(shí)現(xiàn)。pick 組件使用 mode 來區(qū)分類別,默認(rèn)使用普通選擇器就行。

  還有另一個方法就是可以通過自定義組件實(shí)現(xiàn),代碼如下:

  //index.js
  Component({
  /**
  * 組件的屬性列表
  */
  properties: {
  propArray: {
  type: Array,
  }
  },
  /**
  * 組件的初始數(shù)據(jù)
  */
  data: {
  selectShow: false,//初始o(jì)ption不顯示
  selectText: "請選擇",//初始內(nèi)容
  },
  /**
  * 組件的方法列表
  */
  methods: {
  //option的顯示與否
  selectToggle: function () {
  var nowShow = this.data.selectShow;//獲取當(dāng)前option顯示的狀態(tài)
  this.setData({
  selectShow: !nowShow
  })
  },
  //設(shè)置內(nèi)容
  setText: function (e) {
  var nowData = this.properties.propArray;//當(dāng)前option的數(shù)據(jù)是引入組件的頁面?zhèn)鬟^來的,所以這里獲取數(shù)據(jù)只有通過this.properties
  var nowIdx = e.target.dataset.index;//當(dāng)前點(diǎn)擊的索引
  var nowText = nowData[nowIdx].text || nowData[nowIdx].value || nowData[nowIdx];//當(dāng)前點(diǎn)擊的內(nèi)容
  //再次執(zhí)行動畫,注意這里一定,一定,一定是this.animation來使用動畫
  this.setData({
  selectShow: false,
  selectText: nowText,
  })
  this.triggerEvent('select', nowData[nowIdx])
  }
  }
  })

  代碼如下: 

 <view class='ms-content-box'>
  <view class='ms-content' bindtap='selectToggle'>
  <view class='ms-text'>{{selectText}}</view>
  <view class="{{selectShow ? 'icon-up' : 'icon-down'}}"></view>
  </view>
  <view class='ms-options' wx:if="{{selectShow}}">
  <view wx:for="{{propArray}}" data-index="{{index}}" wx:key='index' class='ms-option' bindtap='setText'>{{item.text || item.value || item}}</view>
  </view>
  </view>

  樣式實(shí)現(xiàn):

  /* components/single-dropdown-select/index.wxss */
  .ms-content-box {
  width: 120px;
  }
  .ms-content {
  border: 1px solid #e2e2e2;
  background: white;
  font-size: 16px;
  position: relative;
  height: 30px;
  line-height: 30px;
  }
  .ms-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding: 0 40px 0 6px;
  font-size: 14px;
  }
  .ms-options {
  background: white;
  width: inherit;
  position: absolute;
  border: 1px solid #e2e2e2;
  border-top: none;
  box-sizing: border-box;
  z-index: 3;
  max-height: 120px;
  overflow: auto;
  }
  .ms-option {
  height: 30px;
  line-height: 30px;
  border-top: 1px solid #e2e2e2;
  padding: 0 6px;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 14px;
  }
  .ms-item:first-child {
  border-top: none;
  }
  .icon-right, .icon-down, .icon-up {
  display: inline-block;
  padding-right: 13rpx;
  position: absolute;
  right: 20rpx;
  top: 10rpx;
  }
  .icon-right::after, .icon-down::after, .icon-up::after {
  content: "";
  display: inline-block;
  position: relative;
  bottom: 2rpx;
  margin-left: 10rpx;
  height: 10px;
  width: 10px;
  border: solid #bbb;
  border-width: 2px 2px 0 0;
  }
  .icon-right::after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  }
  .icon-down::after {
  bottom: 14rpx;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  }
  .icon-up::after {
  bottom: 0rpx;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  }

  如何使用呢?首先在引用組件的頁面,引入組件: 

 {
  "usingComponents": {
  "single-dropdown-select": "/components/single-dropdown-select/index"
  }
  }

  在頁面中,直接使用 引入的組件,代碼如下:

  <view>
  <single-dropdown-select prop-array='{{selectArray}}' bind:select='select' />
  </view>

  同時傳入數(shù)據(jù)和監(jiān)聽子組件向父組件傳遞的 select 方法。

   Page({
  data: {
  selectArray: [{
  "id": "10",
  "value": "會計類"
  }, {
  "id": "21",
  "text": "工程類"
  }, '技術(shù)類', {'value': '其他'}]
  },
  select: function(e) {
  console.log(e.detail)
  }
  })

  本文內(nèi)容已全部講述完畢,歡迎大家關(guān)注更多后續(xù)精彩內(nèi)容。


文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/128264.html

相關(guān)文章

  • 信小程序下拉

    摘要:微信小程序組件里沒有下拉框,正好要用到,記下來以后參考代碼選擇接收班級下拉框下拉需要顯示的列表代碼頂部下拉框下拉內(nèi)容下拉過度效果下拉圖標(biāo)代碼頁面的初始數(shù)據(jù)請選擇猛犸機(jī)器人班猛犸機(jī)器人班口才班點(diǎn)擊下拉框已選下拉框效果微信小程序組件里沒有下拉框,正好要用到,記下來以后參考 wxml代碼 選擇接收班級 {{grade_name}} ...

    番茄西紅柿 評論0 收藏0
  • 「輕算賬」小程序實(shí)踐筆記

    摘要:資源開發(fā)文檔是一套完全免費(fèi)的微信小程序開發(fā)框架,擴(kuò)展了小程序的能力。推薦有一些不錯的解決方案封裝封裝跨頁面事件通訊監(jiān)聽數(shù)據(jù)變化開發(fā)如何在微信小程序的頁面間傳遞數(shù)據(jù)需要時可以快速過一遍。微信小程序回調(diào),,,的使用例子供參考 這篇文章主要記錄我做小程序「輕算賬」過程中遇到的一些問題和解決方案,就當(dāng)是做個總結(jié),也希望其中有能夠幫助到他人的信息。 showImg(https://segment...

    BigTomato 評論0 收藏0
  • 信小程序初探

    摘要:在微信小程序中,要更新視圖就只能修改,而視圖層也只能通過事件向邏輯層傳遞交互信息。頁面移植到微信小程序要修改的地方也還比較多,主要是標(biāo)簽和的交互及小程序提供的功能部分。 小程序是一種不需要下載安裝即可使用的應(yīng)用,它實(shí)現(xiàn)了應(yīng)用「觸手可及」的夢想,用戶掃一掃或搜一下即可打開應(yīng)用。也體現(xiàn)了「用完即走」的理念,用戶不用關(guān)心是否安裝太多應(yīng)用的問題。應(yīng)用將無處不在,隨時可用,但又無需安裝卸載。 —...

    teren 評論0 收藏0
  • 信小程序 禁止彈底部內(nèi)容滑動

    摘要:網(wǎng)友們的方法網(wǎng)友們有人使用的方式是給綁定一個空方法。這也是一個解決方法。友情提醒關(guān)于不能滾動的這個效果需要在真機(jī)上面查看,在編輯器上面看不到效果。本文首發(fā)于公眾號前端的極致實(shí)現(xiàn)。歡迎小可愛們來交流加我微信拉大家進(jìn)群 我們需要解決的問題:當(dāng)彈框顯示的時候,彈框下面的內(nèi)容不能滾動 小程序的彈框特別多,像下面這樣,彈框的底部是一個可以下拉的頁面,但是當(dāng)彈框出現(xiàn)的時候,需要禁止底部的滾動,那么...

    terro 評論0 收藏0
  • 信小程序Taro開發(fā)(2):生命周期及開發(fā)中注意點(diǎn)

    摘要:入口文件繼承自組件基類,它同樣擁有組件生命周期,但因?yàn)槿肟谖募奶厥庑裕纳芷诓⒉煌暾纭VС纸M件化開發(fā),組件代碼可以放在任意位置,不過建議放在下的目錄中。 生命周期 componentWillMount 在微信小程序中這一生命周期方法對應(yīng)頁面的onLoad或入口文件app中的onLaunch componentDidMount 在微信小程序中這一生命周期方法對應(yīng)頁面的onRe...

    morgan 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<