feedback.vue 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <template>
  2. <view class="pd16_15">
  3. <view class="box pd16_15">
  4. <view class="flex alcenter">
  5. <text class="ft16 cl-main ftw600 ">问题类型</text>
  6. <text class="ml10 ft12 cl-notice">(请至少选择一个标签分类)</text>
  7. </view>
  8. <view class="mt16 flex wrap">
  9. <view v-for="(item,index) in tags" :data-index="index" @click="changeTag" :class="{on:item.select == 1}" :style="{background:item.select == 1 ? tempColor : '#ffffff'}" class="tag-feedback">{{item.name}}</view>
  10. </view>
  11. </view>
  12. <view class="mt16 box pd16_15">
  13. <textarea v-model="content" placeholder="我有问题要反馈:" placeholder-class="cl-notice" class="ft14" style="height: 300rpx; width: 100%;" :maxlength="300"></textarea>
  14. <view class="mt12 text-right ft12 cl-notice">
  15. {{content.length}}/300
  16. </view>
  17. </view>
  18. <view class="mt16">
  19. <button class="btn-big" :style="isSubmit ? getBtnStyle : getBtnDisStyle">立即提交</button>
  20. </view>
  21. </view>
  22. </template>
  23. <script>
  24. export default{
  25. data(){
  26. return {
  27. content:'',
  28. tags:[
  29. {name:'充值',select:0},
  30. {name:'积分',select:0},
  31. {name:'无法观看',select:0},
  32. {name:'代理',select:0},
  33. {name:'邀请',select:0},
  34. {name:'其他',select:0}
  35. ]
  36. }
  37. },
  38. computed:{
  39. isSubmit(){
  40. if(this.content.length < 30){
  41. return false;
  42. }
  43. let tag = false;
  44. for(var a in this.tags){
  45. if(this.tags[a].select == 1){
  46. tag = true;
  47. break;
  48. }
  49. }
  50. return tag;
  51. }
  52. },
  53. onLoad(){
  54. },
  55. methods:{
  56. changeTag(e){
  57. let index = parseInt(e.currentTarget.dataset.index);
  58. this.tags[index].select = this.tags[index].select == 1 ? 0 : 1;
  59. }
  60. }
  61. }
  62. </script>
  63. <style>
  64. .tag-feedback{
  65. height: 64rpx;
  66. border:2rpx solid #E4E6ED;
  67. padding: 0 20rpx;
  68. line-height: 60rpx;
  69. color:#000000;
  70. font-size: 28rpx;
  71. border-radius: 32rpx;
  72. margin-right: 20rpx;
  73. margin-bottom: 20rpx;
  74. }
  75. .tag-feedback.on{
  76. border:none;
  77. color:#FFFFFF;
  78. line-height: 64rpx;
  79. padding: 0 22rpx;
  80. }
  81. </style>