微信小程序之modal弹出框遮罩层组件——可带文本框

modal弹出框遮罩层可实现提示信息、验证码等功能
然而在官方文档已经删除了modal的页面,说要废弃modal
微信小程序之modal弹出框遮罩层组件——可带文本框_第1张图片

就个人而言modal组件无法被wx.showModal完全替代。大家都知道小程序的wxml的组件可以通过改变js的值实现重新渲染,而接口是无法实现的
微信小程序之modal弹出框遮罩层组件——可带文本框_第2张图片

有同感的也不止博主一个人
微信小程序之modal弹出框遮罩层组件——可带文本框_第3张图片

官方18-5-13的建议要实现此类功能也是用modal


属性

微信小程序之modal弹出框遮罩层组件——可带文本框_第4张图片

说下遮罩层实现,通过改变modal的hidden属性来控制是否显示,通过监听confirm方法来确认提交,通过bindinput来监听modal内表单组件内容

微信小程序之modal弹出框遮罩层组件——可带文本框_第5张图片
微信小程序之modal弹出框遮罩层组件——可带文本框_第6张图片

js

Page({
  data: {
      hiddenModal1:true,
      hiddenModal2:true,
      input:null
  },
  showModal1:function(e){
      this.setData({hiddenModal1:false})
  },
  model1confirm:function(e){
      this.setData({ hiddenModal1: true })
      wx.showToast({
          title: '我觉得OK',
      })
  },
  model1cancel:function(e){
      this.setData({ hiddenModal1: true })
      wx.showToast({
          title: '我觉得不行',
      })
  },
  input:function(e){
      this.setData({input:e.detail.value})
  },
  showModal2: function (e) {
      this.setData({ hiddenModal2: false })
  },
  model2confirm: function (e) {
      this.setData({ hiddenModal2: true })
      wx.showToast({
          title: '确定' +this.data.input,
          icon:'none'
      })
  },
  model2cancel: function (e) {
      this.setData({ hiddenModal2: true })
      wx.showToast({
          title: '取消'+this.data.input,
          icon: 'none'
      })
  }
})

wxml





你可能感兴趣的:(小程序)