coupons-list.js 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505
  1. exports.ids = [8,17];
  2. exports.modules = {
  3. /***/ 136:
  4. /***/ (function(module, exports, __webpack_require__) {
  5. // style-loader: Adds some css to the DOM by adding a <style> tag
  6. // load the styles
  7. var content = __webpack_require__(139);
  8. if(content.__esModule) content = content.default;
  9. if(typeof content === 'string') content = [[module.i, content, '']];
  10. if(content.locals) module.exports = content.locals;
  11. // add CSS to SSR context
  12. var add = __webpack_require__(4).default
  13. module.exports.__inject__ = function (context) {
  14. add("3181fc86", content, true, context)
  15. };
  16. /***/ }),
  17. /***/ 137:
  18. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  19. "use strict";
  20. // ESM COMPAT FLAG
  21. __webpack_require__.r(__webpack_exports__);
  22. // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/price-formate.vue?vue&type=template&id=0c4d5c85&
  23. var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{class:(_vm.lineThrough ? 'line-through' : '') + 'price-format',style:({ color: _vm.color, 'font-weight': _vm.weight })},[_vm._ssrNode(((_vm.showSubscript)?("<span"+(_vm._ssrStyle(null,{
  24. 'font-size': _vm.subscriptSize + 'px',
  25. 'margin-right': '1px',
  26. }, null))+">¥</span>"):"<!---->")+" <span"+(_vm._ssrStyle(null,{ 'font-size': _vm.firstSize + 'px', 'margin-right': '1px' }, null))+">"+_vm._ssrEscape(_vm._s(_vm.priceSlice.first))+"</span> "+((_vm.priceSlice.second)?("<span"+(_vm._ssrStyle(null,{ 'font-size': _vm.secondSize + 'px' }, null))+">"+_vm._ssrEscape("."+_vm._s(_vm.priceSlice.second))+"</span>"):"<!---->"))])}
  27. var staticRenderFns = []
  28. // CONCATENATED MODULE: ./components/price-formate.vue?vue&type=template&id=0c4d5c85&
  29. // CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--2-0!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/price-formate.vue?vue&type=script&lang=js&
  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. /* harmony default export */ var price_formatevue_type_script_lang_js_ = ({
  56. data() {
  57. return {
  58. priceSlice: {}
  59. };
  60. },
  61. components: {},
  62. props: {
  63. firstSize: {
  64. type: Number,
  65. default: 14
  66. },
  67. secondSize: {
  68. type: Number,
  69. default: 14
  70. },
  71. color: {
  72. type: String
  73. },
  74. weight: {
  75. type: [String, Number],
  76. default: 400
  77. },
  78. price: {
  79. type: [String, Number],
  80. default: ''
  81. },
  82. showSubscript: {
  83. type: Boolean,
  84. default: true
  85. },
  86. subscriptSize: {
  87. type: Number,
  88. default: 14
  89. },
  90. lineThrough: {
  91. type: Boolean,
  92. default: false
  93. }
  94. },
  95. created() {
  96. this.priceFormat();
  97. },
  98. watch: {
  99. price(val) {
  100. this.priceFormat();
  101. }
  102. },
  103. methods: {
  104. priceFormat() {
  105. let {
  106. price
  107. } = this;
  108. let priceSlice = {};
  109. if (price !== null) {
  110. price = parseFloat(price);
  111. price = String(price).split('.');
  112. priceSlice.first = price[0];
  113. priceSlice.second = price[1];
  114. this.priceSlice = priceSlice;
  115. }
  116. }
  117. }
  118. });
  119. // CONCATENATED MODULE: ./components/price-formate.vue?vue&type=script&lang=js&
  120. /* harmony default export */ var components_price_formatevue_type_script_lang_js_ = (price_formatevue_type_script_lang_js_);
  121. // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
  122. var componentNormalizer = __webpack_require__(1);
  123. // CONCATENATED MODULE: ./components/price-formate.vue
  124. function injectStyles (context) {
  125. var style0 = __webpack_require__(138)
  126. if (style0.__inject__) style0.__inject__(context)
  127. }
  128. /* normalize component */
  129. var component = Object(componentNormalizer["a" /* default */])(
  130. components_price_formatevue_type_script_lang_js_,
  131. render,
  132. staticRenderFns,
  133. false,
  134. injectStyles,
  135. null,
  136. "7ae24710"
  137. )
  138. /* harmony default export */ var price_formate = __webpack_exports__["default"] = (component.exports);
  139. /***/ }),
  140. /***/ 138:
  141. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  142. "use strict";
  143. __webpack_require__.r(__webpack_exports__);
  144. /* harmony import */ var _node_modules_vue_style_loader_index_js_ref_3_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_3_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_3_oneOf_1_2_node_modules_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_price_formate_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(136);
  145. /* harmony import */ var _node_modules_vue_style_loader_index_js_ref_3_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_3_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_3_oneOf_1_2_node_modules_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_price_formate_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_ref_3_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_3_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_3_oneOf_1_2_node_modules_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_price_formate_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__);
  146. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_vue_style_loader_index_js_ref_3_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_3_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_3_oneOf_1_2_node_modules_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_price_formate_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_vue_style_loader_index_js_ref_3_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_3_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_3_oneOf_1_2_node_modules_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_price_formate_vue_vue_type_style_index_0_lang_css___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  147. /***/ }),
  148. /***/ 139:
  149. /***/ (function(module, exports, __webpack_require__) {
  150. // Imports
  151. var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(3);
  152. var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false);
  153. // Module
  154. ___CSS_LOADER_EXPORT___.push([module.i, ".price-format{display:flex;align-items:baseline}", ""]);
  155. // Exports
  156. module.exports = ___CSS_LOADER_EXPORT___;
  157. /***/ }),
  158. /***/ 163:
  159. /***/ (function(module, exports, __webpack_require__) {
  160. // style-loader: Adds some css to the DOM by adding a <style> tag
  161. // load the styles
  162. var content = __webpack_require__(178);
  163. if(content.__esModule) content = content.default;
  164. if(typeof content === 'string') content = [[module.i, content, '']];
  165. if(content.locals) module.exports = content.locals;
  166. // add CSS to SSR context
  167. var add = __webpack_require__(4).default
  168. module.exports.__inject__ = function (context) {
  169. add("0d5a77d2", content, true, context)
  170. };
  171. /***/ }),
  172. /***/ 169:
  173. /***/ (function(module, exports, __webpack_require__) {
  174. module.exports = __webpack_require__.p + "img/coupons_img_receive.d691393.png";
  175. /***/ }),
  176. /***/ 170:
  177. /***/ (function(module, exports, __webpack_require__) {
  178. module.exports = __webpack_require__.p + "img/bg_coupon_s.3f57cfd.png";
  179. /***/ }),
  180. /***/ 171:
  181. /***/ (function(module, exports, __webpack_require__) {
  182. module.exports = __webpack_require__.p + "img/bg_coupon.b22691e.png";
  183. /***/ }),
  184. /***/ 177:
  185. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  186. "use strict";
  187. __webpack_require__.r(__webpack_exports__);
  188. /* harmony import */ var _node_modules_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_7_oneOf_1_3_node_modules_sass_resources_loader_lib_loader_js_ref_7_oneOf_1_4_node_modules_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_coupons_list_vue_vue_type_style_index_0_id_4191a6d7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(163);
  189. /* harmony import */ var _node_modules_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_7_oneOf_1_3_node_modules_sass_resources_loader_lib_loader_js_ref_7_oneOf_1_4_node_modules_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_coupons_list_vue_vue_type_style_index_0_id_4191a6d7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_7_oneOf_1_3_node_modules_sass_resources_loader_lib_loader_js_ref_7_oneOf_1_4_node_modules_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_coupons_list_vue_vue_type_style_index_0_id_4191a6d7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__);
  190. /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_7_oneOf_1_3_node_modules_sass_resources_loader_lib_loader_js_ref_7_oneOf_1_4_node_modules_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_coupons_list_vue_vue_type_style_index_0_id_4191a6d7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_vue_style_loader_index_js_ref_7_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_7_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_7_oneOf_1_2_node_modules_sass_loader_dist_cjs_js_ref_7_oneOf_1_3_node_modules_sass_resources_loader_lib_loader_js_ref_7_oneOf_1_4_node_modules_nuxt_components_dist_loader_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_coupons_list_vue_vue_type_style_index_0_id_4191a6d7_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  191. /***/ }),
  192. /***/ 178:
  193. /***/ (function(module, exports, __webpack_require__) {
  194. // Imports
  195. var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(3);
  196. var ___CSS_LOADER_GET_URL_IMPORT___ = __webpack_require__(34);
  197. var ___CSS_LOADER_URL_IMPORT_0___ = __webpack_require__(170);
  198. var ___CSS_LOADER_URL_IMPORT_1___ = __webpack_require__(171);
  199. var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false);
  200. var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);
  201. var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___);
  202. // Module
  203. ___CSS_LOADER_EXPORT___.push([module.i, ".coupons-list[data-v-4191a6d7]{padding:0 18px;flex-wrap:wrap;position:relative}.coupons-list .item[data-v-4191a6d7]{margin-bottom:20px;margin-right:16px;position:relative;cursor:pointer}.coupons-list .item .info[data-v-4191a6d7]{padding:0 10px;background:url(" + ___CSS_LOADER_URL_REPLACEMENT_0___ + ") no-repeat;width:240px;height:80px;background-size:100%}.coupons-list .item .info.gray[data-v-4191a6d7]{background-image:url(" + ___CSS_LOADER_URL_REPLACEMENT_1___ + ")}.coupons-list .item .info .info-hd[data-v-4191a6d7]{overflow:hidden}.coupons-list .item .tips[data-v-4191a6d7]{position:relative;background-color:#f2f2f2;height:30px;padding:0 8px}.coupons-list .item .tips .tips-con[data-v-4191a6d7]{width:100%;left:0;background-color:#f2f2f2;position:absolute;top:30px;padding:10px;z-index:99}.coupons-list .item .receice[data-v-4191a6d7]{position:absolute;top:0;right:0;width:58px;height:45px}.coupons-list .item .choose[data-v-4191a6d7]{position:absolute;top:0;right:0;background-color:#ffe72c;color:#ff2c3c;padding:1px 5px}.coupons-list .more[data-v-4191a6d7]{position:absolute;bottom:20px;cursor:pointer;right:30px}", ""]);
  204. // Exports
  205. module.exports = ___CSS_LOADER_EXPORT___;
  206. /***/ }),
  207. /***/ 191:
  208. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  209. "use strict";
  210. // ESM COMPAT FLAG
  211. __webpack_require__.r(__webpack_exports__);
  212. // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/coupons-list.vue?vue&type=template&id=4191a6d7&scoped=true&
  213. var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"coupons-list flex"},[_vm._l((_vm.couponsList),function(item,index){return [_vm._ssrNode("<div class=\"item\""+(_vm._ssrStyle(null,null, { display: (item.isShow) ? '' : 'none' }))+" data-v-4191a6d7>","</div>",[_vm._ssrNode("<div"+(_vm._ssrClass(null,[
  214. 'info white',
  215. { gray: _vm.type == 2 || _vm.type == 1 || item.is_get } ]))+" data-v-4191a6d7>","</div>",[_vm._ssrNode("<div class=\"info-hd flex\" data-v-4191a6d7>","</div>",[_vm._ssrNode("<div data-v-4191a6d7>","</div>",[_c('price-formate',{attrs:{"price":item.money,"first-size":38,"second-size":38}})],1),_vm._ssrNode(" <div class=\"m-l-8 flex1\" data-v-4191a6d7><div class=\"line1\" data-v-4191a6d7>"+_vm._ssrEscape(_vm._s(item.name))+"</div> <div class=\"xs line1\" data-v-4191a6d7>"+_vm._ssrEscape(_vm._s(item.condition_type_desc))+"</div></div>")],2),_vm._ssrNode(" <div class=\"info-time xs\" data-v-4191a6d7>"+_vm._ssrEscape(_vm._s(item.user_time_desc))+"</div>")],2),_vm._ssrNode(" <div class=\"tips flex row-between\" data-v-4191a6d7><div class=\"muted xs\" data-v-4191a6d7>"+_vm._ssrEscape(_vm._s(item.use_scene_desc))+"</div> "+((item.use_goods_type != 1 && (_vm.type == 1 || _vm.type == 2 || _vm.type == 0))?("<div data-v-4191a6d7><i"+(_vm._ssrClass(null,_vm.showTips[index] ? 'el-icon-arrow-up' : 'el-icon-arrow-down'))+" data-v-4191a6d7></i> "+((item.use_scene_desc != '全场通用' && _vm.showTips[index])?("<div class=\"tips-con xs lighter\" data-v-4191a6d7>"+_vm._ssrEscape("\n "+_vm._s(item.use_goods_desc)+"\n ")+"</div>"):"<!---->")+"</div>"):"<!---->")+" "+((_vm.type == 3 && !item.is_get)?("<div class=\"primary sm\" data-v-4191a6d7>\n 立即领取\n </div>"):"<!---->")+"</div> "+((item.is_get)?("<img"+(_vm._ssrAttr("src",__webpack_require__(169)))+" alt class=\"receice\" data-v-4191a6d7>"):"<!---->")+" "+((_vm.type == 4 && _vm.id == item.id)?("<div class=\"choose xs\" data-v-4191a6d7>已选择</div>"):"<!---->"))],2)]}),_vm._ssrNode(" "+((_vm.showMore && _vm.list.length > 4)?("<div class=\"more muted\" data-v-4191a6d7>"+_vm._ssrEscape("\n "+_vm._s(_vm.isMore ? '收起' : '更多')+"\n ")+"<i"+(_vm._ssrClass(null,_vm.isMore ? 'el-icon-arrow-up' : 'el-icon-arrow-down'))+" data-v-4191a6d7></i></div>"):"<!---->"))],2)}
  216. var staticRenderFns = []
  217. // CONCATENATED MODULE: ./components/coupons-list.vue?vue&type=template&id=4191a6d7&scoped=true&
  218. // EXTERNAL MODULE: external "vuex"
  219. var external_vuex_ = __webpack_require__(2);
  220. // CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--2-0!./node_modules/@nuxt/components/dist/loader.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./components/coupons-list.vue?vue&type=script&lang=js&
  221. //
  222. //
  223. //
  224. //
  225. //
  226. //
  227. //
  228. //
  229. //
  230. //
  231. //
  232. //
  233. //
  234. //
  235. //
  236. //
  237. //
  238. //
  239. //
  240. //
  241. //
  242. //
  243. //
  244. //
  245. //
  246. //
  247. //
  248. //
  249. //
  250. //
  251. //
  252. //
  253. //
  254. //
  255. //
  256. //
  257. //
  258. //
  259. //
  260. //
  261. //
  262. //
  263. //
  264. //
  265. //
  266. /* harmony default export */ var coupons_listvue_type_script_lang_js_ = ({
  267. props: {
  268. list: {
  269. type: Array,
  270. default: () => []
  271. },
  272. type: {
  273. type: Number
  274. },
  275. showMore: {
  276. type: Boolean,
  277. default: false
  278. }
  279. },
  280. data() {
  281. return {
  282. showTips: [],
  283. couponsList: [],
  284. id: "",
  285. isMore: false
  286. };
  287. },
  288. methods: { ...Object(external_vuex_["mapActions"])(["getPublicData"]),
  289. onHandle(id, isGet) {
  290. this.id = id;
  291. const {
  292. type
  293. } = this;
  294. switch (type) {
  295. case 0:
  296. // 可使用
  297. break;
  298. case 1:
  299. break;
  300. // 使用
  301. case 2:
  302. break;
  303. //不可以用
  304. case 3:
  305. // 领券
  306. if (!isGet) {
  307. this.getCoupon();
  308. }
  309. break;
  310. case 4:
  311. //使用
  312. if (this.selectId == id) {
  313. this.id = "";
  314. }
  315. this.$emit("use", this.id);
  316. this.selectId = this.id;
  317. break;
  318. }
  319. },
  320. async getCoupon() {
  321. const {
  322. msg,
  323. code
  324. } = await this.$post("coupon/getCoupon", {
  325. coupon_id: this.id
  326. });
  327. if (code == 1) {
  328. this.$message({
  329. message: msg,
  330. type: "success"
  331. });
  332. this.getPublicData();
  333. this.$emit("reflash");
  334. }
  335. },
  336. onShowTips(index) {
  337. const {
  338. showTips
  339. } = this;
  340. this.showTips[index] = showTips[index] ? 0 : 1; // 拷贝数组
  341. this.showTips = Object.assign([], this.showTips);
  342. },
  343. changeShow() {
  344. this.isMore = !this.isMore;
  345. this.list.forEach((item, index) => {
  346. item.isShow = true;
  347. if (!this.isMore && index >= 4) {
  348. item.isShow = false;
  349. }
  350. });
  351. this.couponsList = [...this.list];
  352. }
  353. },
  354. watch: {
  355. list: {
  356. handler: function (val) {
  357. if (val.length) {
  358. // 默认选中第一张
  359. if (this.type == 4) {
  360. this.id = val[0].id;
  361. this.selectId = this.id;
  362. this.$emit("use", this.id);
  363. }
  364. }
  365. let arr = val.map(item => {
  366. return 0;
  367. });
  368. this.showTips = arr;
  369. this.list.forEach((item, index) => {
  370. item.isShow = true;
  371. if (this.showMore) {
  372. if (index >= 4) {
  373. item.isShow = false;
  374. }
  375. }
  376. });
  377. this.couponsList = this.list;
  378. },
  379. immediate: true,
  380. deep: true
  381. }
  382. }
  383. });
  384. // CONCATENATED MODULE: ./components/coupons-list.vue?vue&type=script&lang=js&
  385. /* harmony default export */ var components_coupons_listvue_type_script_lang_js_ = (coupons_listvue_type_script_lang_js_);
  386. // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
  387. var componentNormalizer = __webpack_require__(1);
  388. // CONCATENATED MODULE: ./components/coupons-list.vue
  389. function injectStyles (context) {
  390. var style0 = __webpack_require__(177)
  391. if (style0.__inject__) style0.__inject__(context)
  392. }
  393. /* normalize component */
  394. var component = Object(componentNormalizer["a" /* default */])(
  395. components_coupons_listvue_type_script_lang_js_,
  396. render,
  397. staticRenderFns,
  398. false,
  399. injectStyles,
  400. "4191a6d7",
  401. "1e553bc0"
  402. )
  403. /* harmony default export */ var coupons_list = __webpack_exports__["default"] = (component.exports);
  404. /* nuxt-component-imports */
  405. installComponents(component, {PriceFormate: __webpack_require__(137).default})
  406. /***/ })
  407. };;
  408. //# sourceMappingURL=coupons-list.js.map