bottom2.vue 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209
  1. <template>
  2. <view class="box">
  3. <view class="title">
  4. 免费帮您获取装修预算
  5. </view>
  6. <view class="total">
  7. 今日已有 <text class="num">258</text>位业主申请
  8. </view>
  9. <view class="input-box" hover-class="navigator-hover" @click="showBathroom = true">
  10. <input type="digit" @input="onInput" placeholder="您房子的面积是多少?" style="color: #fff;"
  11. placeholder-class="placeholder" />
  12. <text class="unit">
  13. </text>
  14. </view>
  15. <view class="input-box" hover-class="navigator-hover" @click="showBathroom = true">
  16. <view class="value">
  17. {{ submitData.bathroom }}
  18. </view>
  19. <text class="iconfont icon-a-wodetiaozhuan" />
  20. </view>
  21. <u-action-sheet :actions="bathroomList" :show="showBathroom" cancelText="取消" @close="showBathroom = false"
  22. @select="onSelect($event, 'bathroom')" />
  23. <view class="input-box" hover-class="navigator-hover" @click="showWall = true">
  24. <view class="value">
  25. {{ submitData.wall }}
  26. </view>
  27. <text class="iconfont icon-a-wodetiaozhuan" />
  28. </view>
  29. <u-action-sheet :actions="wallList" :show="showWall" cancelText="取消" @close="showWall = false"
  30. @select="onSelect($event, 'wall')" />
  31. <view class="radio-box">
  32. <u-radio-group v-model="submitData.type">
  33. <u-radio v-for="item in radioList" style="margin-right: 20px;" :key="item.name" activeColor="#E3041F"
  34. labelColor="#FFFFFF" :customStyle="item.customStyle" :labelSize="tovw(14)" :label="item.name"
  35. :name="item.name" />
  36. </u-radio-group>
  37. </view>
  38. <view class="submit" hover-class="navigator-hover">
  39. 立即估算报价 <text class="iconfont icon-a-wodetiaozhuan" />
  40. </view>
  41. <view class="evenMore">
  42. 更多阳台空间、全屋顶墙柜门等报价,请咨询当地专卖店
  43. </view>
  44. </view>
  45. </template>
  46. <script>
  47. export default {
  48. name: "bottom2",
  49. data() {
  50. return {
  51. submitData: {
  52. "area": "100",
  53. "wall": "1个背景墙",
  54. "bathroom": "1厨1卫",
  55. "type": "毛坯房装修"
  56. },
  57. radioList: [{
  58. name: "毛坯房装修",
  59. customStyle: { marginRight: this.tovw(26) }
  60. }, {
  61. name: "旧房装修",
  62. customStyle: { marginRight: this.tovw(26) }
  63. }, {
  64. name: "精装房焕新"
  65. }],
  66. showWall: false,
  67. showBathroom: false,
  68. bathroomList: [{
  69. name: '0厨0卫',
  70. }, {
  71. name: '1厨1卫',
  72. }, {
  73. name: '1厨2卫',
  74. }, {
  75. name: '1厨3卫',
  76. }, {
  77. name: '1厨>3卫',
  78. }],
  79. wallList: [{
  80. name: '0个背景墙',
  81. }, {
  82. name: '1个背景墙',
  83. }, {
  84. name: '2个背景墙',
  85. }, {
  86. name: '3个背景墙',
  87. }, {
  88. name: '>3个背景墙',
  89. }]
  90. }
  91. },
  92. methods: {
  93. onSelect({ name }, key) {
  94. this.submitData[key] = name;
  95. },
  96. onInput(e) {
  97. this.submitData.area = e.detail.value;
  98. console.log("submitData", this.submitData)
  99. }
  100. },
  101. }
  102. </script>
  103. <style lang="scss" scoped>
  104. .box {
  105. display: flex;
  106. flex-direction: column;
  107. align-items: center;
  108. width: 100vw;
  109. padding: 30px 0;
  110. background: radial-gradient(100% 0% at 50% 50%, #7E7E7E 0%, #787878 100%);
  111. /deep/.placeholder {
  112. color: #fff;
  113. opacity: .6;
  114. }
  115. .title {
  116. line-height: 22px;
  117. font-family: PingFang SC, PingFang SC;
  118. font-weight: 500;
  119. font-size: 16px;
  120. color: #FFFFFF;
  121. letter-spacing: 1px;
  122. }
  123. .total {
  124. line-height: 17px;
  125. font-family: PingFang SC, PingFang SC;
  126. font-size: 12px;
  127. color: #FFFFFF;
  128. margin-top: 5px;
  129. letter-spacing: 1.5px;
  130. .num {
  131. color: #FC9228;
  132. padding: 0 5px;
  133. letter-spacing: 0px;
  134. }
  135. }
  136. .input-box {
  137. display: flex;
  138. align-items: center;
  139. justify-content: space-between;
  140. width: 315px;
  141. height: 45px;
  142. background: rgba(255, 255, 255, 0.2);
  143. border-radius: 2px;
  144. border: 1px solid rgba(255, 255, 255, 0.2);
  145. box-sizing: border-box;
  146. padding: 0 10px;
  147. margin-top: 10px;
  148. .value {
  149. color: #FFFFFF;
  150. font-size: 14px;
  151. }
  152. .iconfont {
  153. color: #FFFFFF;
  154. transform: rotate(90deg);
  155. }
  156. .unit {
  157. color: #FFFFFF;
  158. }
  159. }
  160. .radio-box {
  161. height: 20px;
  162. line-height: 20px;
  163. margin-top: 20px;
  164. }
  165. .submit {
  166. display: flex;
  167. align-items: center;
  168. justify-content: center;
  169. width: 315px;
  170. height: 45px;
  171. background: #FC9228;
  172. border-radius: 2px;
  173. font-family: PingFang SC, PingFang SC;
  174. font-weight: 500;
  175. font-size: 14px;
  176. color: #FFFFFF;
  177. margin-top: 20px;
  178. .iconfont {
  179. font-size: 12px;
  180. margin-left: 4px;
  181. }
  182. }
  183. .evenMore {
  184. margin-top: 10px;
  185. line-height: 17px;
  186. font-family: PingFang SC, PingFang SC;
  187. font-size: 12px;
  188. color: rgba(255, 255, 255, 0.8);
  189. }
  190. }
  191. </style>