当前位置:   article > 正文

uni-popup(实现自定义弹窗提示、交互)_uniapp popover

uniapp popover

        一般提示框的样式,一般由设计稿而定,如果用uniapp的showmodel,那个并不能满足我们需要的自定义样式,所以最好的方式是我们自己封装一个!(想什么样就什么样)!

一、页面效果

二、使用uni-popup

直接看代码吧!

  1. <template>
  2. <view>
  3. <uni-popup ref="tipPopup" type="center" :is-mask-click="true">
  4. <view class="pop">
  5. <view class="title">
  6. 温馨提示
  7. </view>
  8. <!-- 提示icon -->
  9. <view class="tip-img">
  10. <image src="../../static/image/tip/tip-icon.png" mode=""></image>
  11. </view>
  12. <view class="tip-info">
  13. {{title}}
  14. </view>
  15. <view class="sure" @click="sure">
  16. 确定
  17. </view>
  18. </view>
  19. </uni-popup>
  20. </view>
  21. </template>
  22. <script>
  23. export default {
  24. name:"showTip",
  25. props:["title"],
  26. data() {
  27. return {
  28. };
  29. },
  30. methods: {
  31. open() {
  32. this.$refs.tipPopup.open()
  33. },
  34. sure() {
  35. this.$refs.tipPopup.close()
  36. }
  37. }
  38. }
  39. </script>
  40. <style scoped>
  41. .pop {
  42. position: absolute;
  43. left: 50%;
  44. top: 50%;
  45. transform: translate(-50%,-50%);
  46. background-color: #fff;
  47. border-radius: 16rpx;
  48. height: 576rpx;
  49. z-index: 99;
  50. width: 640rpx;
  51. padding: 30rpx 0;
  52. }
  53. .title {
  54. text-align: center;
  55. font-size: 34rpx;
  56. font-weight: 500;
  57. margin-top: 38rpx;
  58. }
  59. .tip-img {
  60. margin: 0 auto;
  61. width: 296rpx;
  62. height: 204rpx;
  63. margin-top: 64rpx;
  64. }
  65. .tip-img image {
  66. width: 100%;
  67. height: 100%;
  68. }
  69. .tip-info {
  70. padding: 0 30rpx;
  71. font-size: 34rpx;
  72. color: #666;
  73. margin-top: 32rpx;
  74. margin-bottom: 64rpx;
  75. text-align: center;
  76. }
  77. .sure {
  78. width: 100%;
  79. border-top: 1rpx solid #d1d1d1;
  80. height: 112rpx;
  81. text-align: center;
  82. line-height: 112rpx;
  83. color: #02A53C;
  84. font-size: 34rpx;
  85. font-weight: 500;
  86. }
  87. </style>

我这里是把他封装成组件,一般这种交互性的,用得到的地方比较多,也建议封装成组件进行使用。

三、在页面中使用

主要是这俩个方法控制关和开。

导入和使用:

  1. <!-- 错误提示弹窗 -->
  2. <showTip ref="showtip" :title="tiptitle"></showTip>
import showTip from "/components/showTip/showTip.vue";

 声明:

在data中声明数据:

  1. privacyVisible: false,
  2. tiptitle: "错误",

声明组件: 

  1. components: {
  2. showTip
  3. },

然后就可以使用了:

比如:

 顺便把错误的提示文字传进去组件,组件通过props接收直接使用。

根据这个规则,就可以在此基础上封装成自己需要的样式就可以了!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/406592
推荐阅读
相关标签
  

闽ICP备14008679号