微信小程序自定义对话框实例的详细讲解分析

why 74 2024-09-10

微信小程序 自定义对话框实例详解

效果图:

微信小程序 自定义对话框实例详解

index.wxml:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

<button type="default" bindtap="clickbtn">

 点击

</button>

<view class="commodity_screen" bindtap="hideModal" wx:if="{{showModalStatus}}"></view>

<view animation="{{animationData}}" class="commodity_attr_box" wx:if="{{showModalStatus}}">

<!--对话框标题-->

<view class="dialog-title">

 输入内容

</view>

<!--对话框输入部分-->

<view class="input-view">

 <input type="text" bindblur="input_content" class="input-style"/>

</view>

<!--对话框按钮-->

<view class="line-top"

</view>

<view class="btn-view">

 <view class="btn-cancel" bindtap="click_cancel"

     取 消

 </view>

 <view class="btn-line">

 </view>

 <view class="btn-cancel" bindtap="click_ok"

     确 定

 </view>

</view>

</view>

index.js:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

var inputinfo = "";

var app = getApp()

Page({

 data: {

  animationData:"",

  showModalStatus:false

 },

   

 onLoad: function () {

    

 },

 showModal: function () {

  // 显示遮罩层

  var animation = wx.createAnimation({

   duration: 200,

   timingFunction: "linear",

   delay: 0

  })

  this.animation = animation

  animation.translateY(300).step()

  this.setData({

   animationData: animation.export(),

   showModalStatus: true

  })

  setTimeout(function () {

   animation.translateY(0).step()

   this.setData({

    animationData: animation.export()

   })

  }.bind(this), 200)

 },

 clickbtn:function(){

  if(this.data.showModalStatus){

   this.hideModal();

  }else{

   this.showModal();

  }

 },

 hideModal: function () {

  // 隐藏遮罩层

  var animation = wx.createAnimation({

   duration: 200,

   timingFunction: "linear",

   delay: 0

  })

  this.animation = animation

  animation.translateY(300).step()

  this.setData({

   animationData: animation.export(),

  })

  setTimeout(function () {

   animation.translateY(0).step()

   this.setData({

    animationData: animation.export(),

    showModalStatus: false

   })

  }.bind(this), 200)

 },

 click_cancel:function(){

  console.log("点击取消");

   this.hideModal();

 },

 click_ok:function(){

  console.log("点击了确定===,输入的信息为为==",inputinfo);

   this.hideModal();

 },

 input_content:function(e){

  console.log(e);

  inputinfo = e.detail.value; 

 }

  

})

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:微信小程序实现对接七牛云存储的具体实例讲解
下一篇:开发微信公众平台配置接口程序详细步骤
相关文章

 发表评论

暂时没有评论,来抢沙发吧~