menu-pop.vue 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. <template>
  2. <view v-show="isShowMsgPop">
  3. <view class="mask" @tap='clickMask' @touchmove.stop.prevent="moveHandle"></view>
  4. <view class="pop-menu">
  5. <view class="arrow">
  6. <image src="/static/images/customer/pop_arrow.png" mode="widthFix"></image>
  7. </view>
  8. <view class="menu">
  9. <view class="u-f-ac" @tap='clickOrder'>
  10. <image src="/static/images/customer/sq_zb.png" mode="widthFix"></image>
  11. <text>生成订单</text>
  12. </view>
  13. <view class="u-f-ac" @tap='clickTransfer'>
  14. <image src="/static/images/customer/zhuangyi.png" mode="widthFix"></image>
  15. <text>转移</text>
  16. </view>
  17. <view class="u-f-ac" @tap='clickRecovery'>
  18. <image src="/static/images/customer/recyle.png" mode="widthFix"></image>
  19. <text>回收</text>
  20. </view>
  21. </view>
  22. </view>
  23. </view>
  24. </template>
  25. <script>
  26. export default{
  27. props:{
  28. isShowMsgPop:{
  29. type:Boolean,
  30. default:false
  31. }
  32. },
  33. data(){
  34. return{
  35. }
  36. },
  37. methods:{
  38. //蒙层点击
  39. clickMask(){
  40. return this.$emit('clickMask');
  41. },
  42. clickOrder(){
  43. return this.$emit('clickOrder');
  44. },
  45. clickTransfer(){
  46. return this.$emit('clickTransfer');
  47. },
  48. clickRecovery(){
  49. return this.$emit('clickRecovery');
  50. },
  51. moveHandle(){
  52. }
  53. }
  54. }
  55. </script>
  56. <style lang="scss" scoped>
  57. .u-f-ac{
  58. display: flex;
  59. align-items: center;
  60. }
  61. .pop-menu {
  62. margin-top: -30rpx;
  63. width: 350rpx;
  64. height: 230rpx;
  65. position: absolute;
  66. z-index: 666;
  67. right: 16rpx;
  68. .arrow {
  69. text-align: right;
  70. padding-right: 25rpx;
  71. image {
  72. width: 30rpx;
  73. height: 15rpx;
  74. }
  75. }
  76. .menu {
  77. margin-top: -13rpx;
  78. background-color: #FFFFFF;
  79. border-radius: 10rpx;
  80. text-align: center;
  81. padding: 0 30rpx;
  82. view {
  83. width: 270rpx;
  84. height: calc(200rpx/2);
  85. }
  86. image {
  87. width: 36rpx;
  88. height: 36rpx;
  89. margin-right: 20rpx;
  90. }
  91. }
  92. }
  93. .mask {
  94. position: fixed;
  95. z-index: 600;
  96. top: 0;
  97. right: 0;
  98. bottom: 0;
  99. left: 0;
  100. background-color: rgba(0, 0, 0, 0.3);
  101. }
  102. </style>