_id.js 69 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917
  1. exports.ids = [26,6,7,14,15,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. /***/ 140:
  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__(142);
  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("12a18d22", content, true, context)
  170. };
  171. /***/ }),
  172. /***/ 141:
  173. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  174. "use strict";
  175. __webpack_require__.r(__webpack_exports__);
  176. /* 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_null_data_vue_vue_type_style_index_0_id_93598fb0_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(140);
  177. /* 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_null_data_vue_vue_type_style_index_0_id_93598fb0_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_null_data_vue_vue_type_style_index_0_id_93598fb0_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__);
  178. /* 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_null_data_vue_vue_type_style_index_0_id_93598fb0_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_null_data_vue_vue_type_style_index_0_id_93598fb0_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  179. /***/ }),
  180. /***/ 142:
  181. /***/ (function(module, exports, __webpack_require__) {
  182. // Imports
  183. var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(3);
  184. var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false);
  185. // Module
  186. ___CSS_LOADER_EXPORT___.push([module.i, ".null-data[data-v-93598fb0]{padding:100px}.null-data .img-null[data-v-93598fb0]{width:150px;height:150px}", ""]);
  187. // Exports
  188. module.exports = ___CSS_LOADER_EXPORT___;
  189. /***/ }),
  190. /***/ 143:
  191. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  192. "use strict";
  193. // ESM COMPAT FLAG
  194. __webpack_require__.r(__webpack_exports__);
  195. // 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/null-data.vue?vue&type=template&id=93598fb0&scoped=true&
  196. var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"bg-white flex-col col-center null-data"},[_vm._ssrNode("<img"+(_vm._ssrAttr("src",_vm.img))+" alt class=\"img-null\""+(_vm._ssrStyle(null,_vm.imgStyle, null))+" data-v-93598fb0> <div class=\"muted mt8\" data-v-93598fb0>"+_vm._ssrEscape(_vm._s(_vm.text))+"</div>")])}
  197. var staticRenderFns = []
  198. // CONCATENATED MODULE: ./components/null-data.vue?vue&type=template&id=93598fb0&scoped=true&
  199. // 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/null-data.vue?vue&type=script&lang=js&
  200. //
  201. //
  202. //
  203. //
  204. //
  205. //
  206. //
  207. /* harmony default export */ var null_datavue_type_script_lang_js_ = ({
  208. components: {},
  209. props: {
  210. img: {
  211. type: String
  212. },
  213. text: {
  214. type: String,
  215. default: '暂无数据'
  216. },
  217. imgStyle: {
  218. type: String,
  219. default: ''
  220. }
  221. },
  222. methods: {}
  223. });
  224. // CONCATENATED MODULE: ./components/null-data.vue?vue&type=script&lang=js&
  225. /* harmony default export */ var components_null_datavue_type_script_lang_js_ = (null_datavue_type_script_lang_js_);
  226. // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
  227. var componentNormalizer = __webpack_require__(1);
  228. // CONCATENATED MODULE: ./components/null-data.vue
  229. function injectStyles (context) {
  230. var style0 = __webpack_require__(141)
  231. if (style0.__inject__) style0.__inject__(context)
  232. }
  233. /* normalize component */
  234. var component = Object(componentNormalizer["a" /* default */])(
  235. components_null_datavue_type_script_lang_js_,
  236. render,
  237. staticRenderFns,
  238. false,
  239. injectStyles,
  240. "93598fb0",
  241. "728f99de"
  242. )
  243. /* harmony default export */ var null_data = __webpack_exports__["default"] = (component.exports);
  244. /***/ }),
  245. /***/ 144:
  246. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  247. "use strict";
  248. // ESM COMPAT FLAG
  249. __webpack_require__.r(__webpack_exports__);
  250. // 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/count-down.vue?vue&type=template&id=2fbaab86&
  251. var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.time >= 0)?_c('div',[_c('client-only',[(_vm.isSlot)?_vm._t("default"):_c('span',[_vm._v(_vm._s(_vm.formateTime))])],2)],1):_vm._e()}
  252. var staticRenderFns = []
  253. // CONCATENATED MODULE: ./components/count-down.vue?vue&type=template&id=2fbaab86&
  254. // CONCATENATED MODULE: ./utils/parseTime.js
  255. const SECOND = 1000;
  256. const MINUTE = 60 * SECOND;
  257. const HOUR = 60 * MINUTE;
  258. const DAY = 24 * HOUR;
  259. function parseTimeData(time) {
  260. const days = Math.floor(time / DAY);
  261. const hours = sliceTwo(Math.floor(time % DAY / HOUR));
  262. const minutes = sliceTwo(Math.floor(time % HOUR / MINUTE));
  263. const seconds = sliceTwo(Math.floor(time % MINUTE / SECOND));
  264. return {
  265. days: days,
  266. hours: hours,
  267. minutes: minutes,
  268. seconds: seconds
  269. };
  270. }
  271. function sliceTwo(str) {
  272. return (0 + str.toString()).slice(-2);
  273. }
  274. function parseFormat(format, timeData) {
  275. let days = timeData.days;
  276. let hours = timeData.hours,
  277. minutes = timeData.minutes,
  278. seconds = timeData.seconds;
  279. if (format.indexOf('dd') !== -1) {
  280. format = format.replace('dd', days);
  281. }
  282. if (format.indexOf('hh') !== -1) {
  283. format = format.replace('hh', sliceTwo(hours));
  284. }
  285. if (format.indexOf('mm') !== -1) {
  286. format = format.replace('mm', sliceTwo(minutes));
  287. }
  288. if (format.indexOf('ss') !== -1) {
  289. format = format.replace('ss', sliceTwo(seconds));
  290. }
  291. return format;
  292. }
  293. // 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/count-down.vue?vue&type=script&lang=js&
  294. //
  295. //
  296. //
  297. //
  298. //
  299. //
  300. //
  301. //
  302. //
  303. /* harmony default export */ var count_downvue_type_script_lang_js_ = ({
  304. components: {},
  305. props: {
  306. isSlot: {
  307. type: Boolean,
  308. default: false
  309. },
  310. time: {
  311. type: Number,
  312. default: 0
  313. },
  314. format: {
  315. type: String,
  316. default: 'hh:mm:ss'
  317. },
  318. autoStart: {
  319. type: Boolean,
  320. default: true
  321. }
  322. },
  323. watch: {
  324. time: {
  325. immediate: true,
  326. handler(value) {
  327. if (value) {
  328. this.reset();
  329. }
  330. }
  331. }
  332. },
  333. data() {
  334. return {
  335. timeObj: {},
  336. formateTime: 0
  337. };
  338. },
  339. created() {},
  340. computed: {},
  341. methods: {
  342. createTimer(fn) {
  343. return setTimeout(fn, 100);
  344. },
  345. isSameSecond(time1, time2) {
  346. return Math.floor(time1) === Math.floor(time2);
  347. },
  348. start() {
  349. if (this.counting) {
  350. return;
  351. }
  352. this.counting = true;
  353. this.endTime = Date.now() + this.remain * 1000;
  354. this.setTimer();
  355. },
  356. setTimer() {
  357. this.tid = this.createTimer(() => {
  358. let remain = this.getRemain();
  359. if (!this.isSameSecond(remain, this.remain) || remain === 0) {
  360. this.setRemain(remain);
  361. }
  362. if (this.remain !== 0) {
  363. this.setTimer();
  364. }
  365. });
  366. },
  367. getRemain() {
  368. return Math.max(this.endTime - Date.now(), 0);
  369. },
  370. pause() {
  371. this.counting = false;
  372. clearTimeout(this.tid);
  373. },
  374. reset() {
  375. this.pause();
  376. this.remain = this.time;
  377. this.setRemain(this.remain);
  378. if (this.autoStart) {
  379. this.start();
  380. }
  381. },
  382. setRemain(remain) {
  383. const {
  384. format
  385. } = this;
  386. this.remain = remain;
  387. const timeData = parseTimeData(remain);
  388. this.formateTime = parseFormat(format, timeData);
  389. this.$emit('change', timeData);
  390. if (remain === 0) {
  391. this.pause();
  392. this.$emit('finish');
  393. }
  394. }
  395. }
  396. });
  397. // CONCATENATED MODULE: ./components/count-down.vue?vue&type=script&lang=js&
  398. /* harmony default export */ var components_count_downvue_type_script_lang_js_ = (count_downvue_type_script_lang_js_);
  399. // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
  400. var componentNormalizer = __webpack_require__(1);
  401. // CONCATENATED MODULE: ./components/count-down.vue
  402. function injectStyles (context) {
  403. }
  404. /* normalize component */
  405. var component = Object(componentNormalizer["a" /* default */])(
  406. components_count_downvue_type_script_lang_js_,
  407. render,
  408. staticRenderFns,
  409. false,
  410. injectStyles,
  411. null,
  412. "4090b4e2"
  413. )
  414. /* harmony default export */ var count_down = __webpack_exports__["default"] = (component.exports);
  415. /***/ }),
  416. /***/ 162:
  417. /***/ (function(module, exports, __webpack_require__) {
  418. module.exports = __webpack_require__.p + "img/news_null.856b3f3.png";
  419. /***/ }),
  420. /***/ 164:
  421. /***/ (function(module, exports, __webpack_require__) {
  422. // style-loader: Adds some css to the DOM by adding a <style> tag
  423. // load the styles
  424. var content = __webpack_require__(180);
  425. if(content.__esModule) content = content.default;
  426. if(typeof content === 'string') content = [[module.i, content, '']];
  427. if(content.locals) module.exports = content.locals;
  428. // add CSS to SSR context
  429. var add = __webpack_require__(4).default
  430. module.exports.__inject__ = function (context) {
  431. add("663bee12", content, true, context)
  432. };
  433. /***/ }),
  434. /***/ 179:
  435. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  436. "use strict";
  437. __webpack_require__.r(__webpack_exports__);
  438. /* 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_number_box_vue_vue_type_style_index_0_id_1d9d8f36_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(164);
  439. /* 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_number_box_vue_vue_type_style_index_0_id_1d9d8f36_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_number_box_vue_vue_type_style_index_0_id_1d9d8f36_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__);
  440. /* 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_number_box_vue_vue_type_style_index_0_id_1d9d8f36_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_number_box_vue_vue_type_style_index_0_id_1d9d8f36_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  441. /***/ }),
  442. /***/ 180:
  443. /***/ (function(module, exports, __webpack_require__) {
  444. // Imports
  445. var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(3);
  446. var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false);
  447. // Module
  448. ___CSS_LOADER_EXPORT___.push([module.i, ".number-box[data-v-1d9d8f36]{display:inline-flex;align-items:center}.number-box .number-input[data-v-1d9d8f36]{position:relative;text-align:center;padding:0;margin:0 6px;align-items:center;justify-content:center}.number-box .minus[data-v-1d9d8f36],.number-box .plus[data-v-1d9d8f36]{width:32px;display:flex;justify-content:center;align-items:center;cursor:pointer}.number-box .plus[data-v-1d9d8f36]{border-radius:0 2px 2px 0}.number-box .minus[data-v-1d9d8f36]{border-radius:2px 0 0 2px}.number-box .disabled[data-v-1d9d8f36]{color:#c8c9cc!important;background:#f7f8fa!important}.number-box .input-disabled[data-v-1d9d8f36]{color:#c8c9cc!important;background-color:#f2f3f5!important}", ""]);
  449. // Exports
  450. module.exports = ___CSS_LOADER_EXPORT___;
  451. /***/ }),
  452. /***/ 188:
  453. /***/ (function(module, exports, __webpack_require__) {
  454. // style-loader: Adds some css to the DOM by adding a <style> tag
  455. // load the styles
  456. var content = __webpack_require__(207);
  457. if(content.__esModule) content = content.default;
  458. if(typeof content === 'string') content = [[module.i, content, '']];
  459. if(content.locals) module.exports = content.locals;
  460. // add CSS to SSR context
  461. var add = __webpack_require__(4).default
  462. module.exports.__inject__ = function (context) {
  463. add("23143360", content, true, context)
  464. };
  465. /***/ }),
  466. /***/ 192:
  467. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  468. "use strict";
  469. // ESM COMPAT FLAG
  470. __webpack_require__.r(__webpack_exports__);
  471. // 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/number-box.vue?vue&type=template&id=1d9d8f36&scoped=true&
  472. var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"number-box"},[_vm._ssrNode("<div"+(_vm._ssrClass(null,{ minus: true, disabled: _vm.disabled || _vm.inputVal <= _vm.min }))+(_vm._ssrStyle(null,{
  473. background: _vm.bgColor,
  474. height: _vm.inputHeight + 'px',
  475. color: _vm.color,
  476. }, null))+" data-v-1d9d8f36><div"+(_vm._ssrStyle(null,{ fontSize: _vm.size + 'px' }, null))+" data-v-1d9d8f36>-</div></div> <input"+(_vm._ssrAttr("disabled",_vm.disabledInput || _vm.disabled))+" type=\"text\""+(_vm._ssrAttr("value",(_vm.inputVal)))+(_vm._ssrClass(null,{ 'number-input': true, 'input-disabled': _vm.disabled }))+(_vm._ssrStyle(null,{
  477. color: _vm.color,
  478. fontSize: _vm.size + 'px',
  479. background: _vm.bgColor,
  480. height: _vm.inputHeight + 'px',
  481. width: _vm.inputWidth + 'px',
  482. }, null))+" data-v-1d9d8f36> <div"+(_vm._ssrClass("plus",{ disabled: _vm.disabled || _vm.inputVal >= _vm.max }))+(_vm._ssrStyle(null,{
  483. background: _vm.bgColor,
  484. height: _vm.inputHeight + 'px',
  485. color: _vm.color,
  486. }, null))+" data-v-1d9d8f36><div"+(_vm._ssrStyle(null,{ fontSize: _vm.size + 'px' }, null))+" data-v-1d9d8f36>+</div></div>")])}
  487. var staticRenderFns = []
  488. // CONCATENATED MODULE: ./components/number-box.vue?vue&type=template&id=1d9d8f36&scoped=true&
  489. // 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/number-box.vue?vue&type=script&lang=js&
  490. //
  491. //
  492. //
  493. //
  494. //
  495. //
  496. //
  497. //
  498. //
  499. //
  500. //
  501. //
  502. //
  503. //
  504. //
  505. //
  506. //
  507. //
  508. //
  509. //
  510. //
  511. //
  512. //
  513. //
  514. //
  515. //
  516. //
  517. //
  518. //
  519. //
  520. //
  521. //
  522. //
  523. //
  524. //
  525. //
  526. //
  527. //
  528. //
  529. //
  530. //
  531. //
  532. //
  533. /* harmony default export */ var number_boxvue_type_script_lang_js_ = ({
  534. components: {},
  535. props: {
  536. // 预显示的数字
  537. value: {
  538. type: Number,
  539. default: 1
  540. },
  541. // 背景颜色
  542. bgColor: {
  543. type: String,
  544. default: ' #F2F3F5'
  545. },
  546. // 最小值
  547. min: {
  548. type: Number,
  549. default: 0
  550. },
  551. // 最大值
  552. max: {
  553. type: Number,
  554. default: 99999
  555. },
  556. // 步进值,每次加或减的值
  557. step: {
  558. type: Number,
  559. default: 1
  560. },
  561. // 是否禁用加减操作
  562. disabled: {
  563. type: Boolean,
  564. default: false
  565. },
  566. // input的字体大小,单位px
  567. size: {
  568. type: [Number, String],
  569. default: 14
  570. },
  571. // input宽度,单位px
  572. inputWidth: {
  573. type: [Number, String],
  574. default: 64
  575. },
  576. //字体颜色
  577. color: {
  578. type: String,
  579. default: '#333'
  580. },
  581. // input高度,单位px
  582. inputHeight: {
  583. type: [Number, String],
  584. default: 32
  585. },
  586. // index索引,用于列表中使用,让用户知道是哪个numberbox发生了变化,一般使用for循环出来的index值即可
  587. index: {
  588. type: [Number, String],
  589. default: ''
  590. },
  591. // 是否禁用输入框,与disabled作用于输入框时,为OR的关系,即想要禁用输入框,又可以加减的话
  592. // 设置disabled为false,disabledInput为true即可
  593. disabledInput: {
  594. type: Boolean,
  595. default: false
  596. },
  597. // 是否只能输入大于或等于0的整数(正整数)
  598. positiveInteger: {
  599. type: Boolean,
  600. default: true
  601. },
  602. asyncChange: {
  603. type: Boolean,
  604. default: false
  605. }
  606. },
  607. watch: {
  608. value(v1, v2) {
  609. if (!this.changeFromInner) {
  610. this.inputVal = v1;
  611. this.$nextTick(function () {
  612. this.changeFromInner = false;
  613. });
  614. }
  615. },
  616. inputVal(v1, v2) {
  617. if (v1 == '') return;
  618. let value = 0;
  619. let tmp = /^(?:-?\d+|-?\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(v1);
  620. if (tmp && v1 >= this.min && v1 <= this.max) value = v1;else value = v2;
  621. if (this.positiveInteger) {
  622. if (v1 < 0 || String(v1).indexOf('.') !== -1) {
  623. value = v2;
  624. this.$nextTick(() => {
  625. this.inputVal = v2;
  626. });
  627. }
  628. }
  629. if (this.asyncChange) {
  630. return;
  631. } // 发出change事件
  632. this.handleChange(value, 'change');
  633. }
  634. },
  635. data() {
  636. return {
  637. inputVal: 1,
  638. // 输入框中的值,不能直接使用props中的value,因为应该改变props的状态
  639. timer: null,
  640. // 用作长按的定时器
  641. changeFromInner: false,
  642. // 值发生变化,是来自内部还是外部
  643. innerChangeTimer: null // 内部定时器
  644. };
  645. },
  646. created() {
  647. this.inputVal = Number(this.value);
  648. },
  649. computed: {},
  650. methods: {
  651. btnTouchStart(callback) {
  652. this[callback]();
  653. },
  654. minus() {
  655. this.computeVal('minus');
  656. },
  657. plus() {
  658. this.computeVal('plus');
  659. },
  660. calcPlus(num1, num2) {
  661. let baseNum, baseNum1, baseNum2;
  662. try {
  663. baseNum1 = num1.toString().split('.')[1].length;
  664. } catch (e) {
  665. baseNum1 = 0;
  666. }
  667. try {
  668. baseNum2 = num2.toString().split('.')[1].length;
  669. } catch (e) {
  670. baseNum2 = 0;
  671. }
  672. baseNum = Math.pow(10, Math.max(baseNum1, baseNum2));
  673. let precision = baseNum1 >= baseNum2 ? baseNum1 : baseNum2;
  674. return ((num1 * baseNum + num2 * baseNum) / baseNum).toFixed(precision);
  675. },
  676. calcMinus(num1, num2) {
  677. let baseNum, baseNum1, baseNum2;
  678. try {
  679. baseNum1 = num1.toString().split('.')[1].length;
  680. } catch (e) {
  681. baseNum1 = 0;
  682. }
  683. try {
  684. baseNum2 = num2.toString().split('.')[1].length;
  685. } catch (e) {
  686. baseNum2 = 0;
  687. }
  688. baseNum = Math.pow(10, Math.max(baseNum1, baseNum2));
  689. let precision = baseNum1 >= baseNum2 ? baseNum1 : baseNum2;
  690. return ((num1 * baseNum - num2 * baseNum) / baseNum).toFixed(precision);
  691. },
  692. computeVal(type) {
  693. if (this.disabled) return;
  694. let value = 0; // 减
  695. if (type === 'minus') {
  696. value = this.calcMinus(this.inputVal, this.step);
  697. } else if (type === 'plus') {
  698. value = this.calcPlus(this.inputVal, this.step);
  699. } // 判断是否小于最小值和大于最大值
  700. if (value < this.min || value > this.max) {
  701. return;
  702. }
  703. if (this.asyncChange) {
  704. this.$emit('change', value);
  705. } else {
  706. this.inputVal = value;
  707. this.handleChange(value, type);
  708. }
  709. },
  710. // 处理用户手动输入的情况
  711. onBlur(event) {
  712. let val = 0;
  713. let value = event.target.value;
  714. console.log(value);
  715. if (!/(^\d+$)/.test(value)) {
  716. val = this.min;
  717. } else {
  718. val = +value;
  719. }
  720. if (val > this.max) {
  721. val = this.max;
  722. } else if (val < this.min) {
  723. val = this.min;
  724. }
  725. this.$nextTick(() => {
  726. this.inputVal = val;
  727. });
  728. this.handleChange(val, 'blur');
  729. },
  730. // 输入框获得焦点事件
  731. onFocus() {
  732. this.$emit('focus');
  733. },
  734. handleChange(value, type) {
  735. if (this.disabled) return; // 清除定时器,避免造成混乱
  736. if (this.innerChangeTimer) {
  737. clearTimeout(this.innerChangeTimer);
  738. this.innerChangeTimer = null;
  739. }
  740. this.changeFromInner = true;
  741. this.innerChangeTimer = setTimeout(() => {
  742. this.changeFromInner = false;
  743. }, 150);
  744. this.$emit('input', Number(value));
  745. this.$emit(type, {
  746. value: Number(value),
  747. index: this.index
  748. });
  749. }
  750. }
  751. });
  752. // CONCATENATED MODULE: ./components/number-box.vue?vue&type=script&lang=js&
  753. /* harmony default export */ var components_number_boxvue_type_script_lang_js_ = (number_boxvue_type_script_lang_js_);
  754. // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
  755. var componentNormalizer = __webpack_require__(1);
  756. // CONCATENATED MODULE: ./components/number-box.vue
  757. function injectStyles (context) {
  758. var style0 = __webpack_require__(179)
  759. if (style0.__inject__) style0.__inject__(context)
  760. }
  761. /* normalize component */
  762. var component = Object(componentNormalizer["a" /* default */])(
  763. components_number_boxvue_type_script_lang_js_,
  764. render,
  765. staticRenderFns,
  766. false,
  767. injectStyles,
  768. "1d9d8f36",
  769. "284477ee"
  770. )
  771. /* harmony default export */ var number_box = __webpack_exports__["default"] = (component.exports);
  772. /***/ }),
  773. /***/ 206:
  774. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  775. "use strict";
  776. __webpack_require__.r(__webpack_exports__);
  777. /* 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_comment_list_vue_vue_type_style_index_0_id_4e1720b8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(188);
  778. /* 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_comment_list_vue_vue_type_style_index_0_id_4e1720b8_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_comment_list_vue_vue_type_style_index_0_id_4e1720b8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__);
  779. /* 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_comment_list_vue_vue_type_style_index_0_id_4e1720b8_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_comment_list_vue_vue_type_style_index_0_id_4e1720b8_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  780. /***/ }),
  781. /***/ 207:
  782. /***/ (function(module, exports, __webpack_require__) {
  783. // Imports
  784. var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(3);
  785. var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false);
  786. // Module
  787. ___CSS_LOADER_EXPORT___.push([module.i, ".comment-list .comment-con>.item[data-v-4e1720b8]{padding:20px;border-bottom:1px dashed #e5e5e5;align-items:flex-start}.comment-list .comment-con>.item .avatar img[data-v-4e1720b8]{border-radius:50%;width:44px;height:44px}.comment-list .comment-con>.item .comment-imglist[data-v-4e1720b8]{margin-top:10px}.comment-list .comment-con>.item .comment-imglist .item[data-v-4e1720b8]{width:80px;height:80px;margin-right:6px}.comment-list .comment-con>.item .reply[data-v-4e1720b8]{background-color:#f2f2f2;align-items:flex-start;padding:10px}", ""]);
  788. // Exports
  789. module.exports = ___CSS_LOADER_EXPORT___;
  790. /***/ }),
  791. /***/ 245:
  792. /***/ (function(module, exports, __webpack_require__) {
  793. // style-loader: Adds some css to the DOM by adding a <style> tag
  794. // load the styles
  795. var content = __webpack_require__(332);
  796. if(content.__esModule) content = content.default;
  797. if(typeof content === 'string') content = [[module.i, content, '']];
  798. if(content.locals) module.exports = content.locals;
  799. // add CSS to SSR context
  800. var add = __webpack_require__(4).default
  801. module.exports.__inject__ = function (context) {
  802. add("6ab4852a", content, true, context)
  803. };
  804. /***/ }),
  805. /***/ 252:
  806. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  807. "use strict";
  808. // ESM COMPAT FLAG
  809. __webpack_require__.r(__webpack_exports__);
  810. // 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/comment-list.vue?vue&type=template&id=4e1720b8&scoped=true&
  811. var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"comment-list"},[_vm._ssrNode("<div class=\"comment-con\" data-v-4e1720b8>","</div>",[(_vm.commentList.length)?[_vm._l((_vm.commentList),function(item,index){return _vm._ssrNode("<div class=\"item flex\" data-v-4e1720b8>","</div>",[_vm._ssrNode("<div class=\"avatar m-r-8\" data-v-4e1720b8><img"+(_vm._ssrAttr("src",item.avatar))+" alt data-v-4e1720b8></div> "),_vm._ssrNode("<div class=\"content flex-1\" data-v-4e1720b8>","</div>",[_vm._ssrNode("<div data-v-4e1720b8>"+_vm._ssrEscape(_vm._s(item.nickname))+"</div> <div class=\"lighter\" style=\"margin: 5px 0 10px\" data-v-4e1720b8><span data-v-4e1720b8>"+_vm._ssrEscape(_vm._s(item.create_time))+"</span> <span data-v-4e1720b8>|</span> <span data-v-4e1720b8>"+_vm._ssrEscape("规格:"+_vm._s(item.spec_value_str))+"</span></div> <div data-v-4e1720b8>"+_vm._ssrEscape("\n "+_vm._s(item.comment)+"\n ")+"</div> "),_vm._ssrNode("<div class=\"comment-imglist flex\" data-v-4e1720b8>","</div>",_vm._l((item.image),function(img,index){return _vm._ssrNode("<div class=\"item\" data-v-4e1720b8>","</div>",[_c('el-image',{staticStyle:{"height":"100%","width":"100%"},attrs:{"preview-src-list":item.image,"src":img,"fit":"contain"}})],1)}),0),_vm._ssrNode(" "+((item.reply)?("<div class=\"flex reply m-t-16\" data-v-4e1720b8><div class=\"primary flex-none\" data-v-4e1720b8>商家回复:</div> <div class=\"lighter\" data-v-4e1720b8>"+_vm._ssrEscape("\n "+_vm._s(item.reply)+"\n ")+"</div></div>"):"<!---->"))],2)],2)}),_vm._ssrNode(" "),(_vm.count)?_vm._ssrNode("<div class=\"pagination flex row-center\" style=\"padding: 38px 0\" data-v-4e1720b8>","</div>",[_c('el-pagination',{attrs:{"background":"","hide-on-single-page":"","layout":"prev, pager, next","total":_vm.count,"page-size":10},on:{"current-change":_vm.changePage}})],1):_vm._e()]:_c('null-data',{attrs:{"img":__webpack_require__(162),"text":"暂无评价~"}})],2)])}
  812. var staticRenderFns = []
  813. // CONCATENATED MODULE: ./components/comment-list.vue?vue&type=template&id=4e1720b8&scoped=true&
  814. // 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/comment-list.vue?vue&type=script&lang=js&
  815. //
  816. //
  817. //
  818. //
  819. //
  820. //
  821. //
  822. //
  823. //
  824. //
  825. //
  826. //
  827. //
  828. //
  829. //
  830. //
  831. //
  832. //
  833. //
  834. //
  835. //
  836. //
  837. //
  838. //
  839. //
  840. //
  841. //
  842. //
  843. //
  844. //
  845. //
  846. //
  847. //
  848. //
  849. //
  850. //
  851. //
  852. //
  853. //
  854. //
  855. //
  856. //
  857. //
  858. //
  859. //
  860. //
  861. //
  862. //
  863. //
  864. //
  865. //
  866. //
  867. //
  868. //
  869. //
  870. //
  871. //
  872. //
  873. //
  874. //
  875. //
  876. //
  877. //
  878. //
  879. //
  880. //
  881. //
  882. //
  883. //
  884. /* harmony default export */ var comment_listvue_type_script_lang_js_ = ({
  885. components: {},
  886. props: {
  887. list: {
  888. type: Array,
  889. default: () => []
  890. },
  891. type: Number,
  892. goodsId: [String, Number]
  893. },
  894. data() {
  895. return {
  896. commentList: [],
  897. count: 0,
  898. page: 1
  899. };
  900. },
  901. created() {
  902. this.getCommentList();
  903. },
  904. methods: {
  905. async getCommentList() {
  906. const {
  907. data,
  908. code
  909. } = await this.$get('goods_comment/lists', {
  910. params: {
  911. type: this.type,
  912. goods_id: this.goodsId,
  913. page_size: 10,
  914. page_no: this.page
  915. }
  916. });
  917. if (code == 1) {
  918. this.commentList = data.lists;
  919. this.count = data.count;
  920. }
  921. },
  922. changePage(current) {
  923. this.page = current;
  924. this.getCommentList();
  925. }
  926. }
  927. });
  928. // CONCATENATED MODULE: ./components/comment-list.vue?vue&type=script&lang=js&
  929. /* harmony default export */ var components_comment_listvue_type_script_lang_js_ = (comment_listvue_type_script_lang_js_);
  930. // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
  931. var componentNormalizer = __webpack_require__(1);
  932. // CONCATENATED MODULE: ./components/comment-list.vue
  933. function injectStyles (context) {
  934. var style0 = __webpack_require__(206)
  935. if (style0.__inject__) style0.__inject__(context)
  936. }
  937. /* normalize component */
  938. var component = Object(componentNormalizer["a" /* default */])(
  939. components_comment_listvue_type_script_lang_js_,
  940. render,
  941. staticRenderFns,
  942. false,
  943. injectStyles,
  944. "4e1720b8",
  945. "849205e4"
  946. )
  947. /* harmony default export */ var comment_list = __webpack_exports__["default"] = (component.exports);
  948. /* nuxt-component-imports */
  949. installComponents(component, {NullData: __webpack_require__(143).default})
  950. /***/ }),
  951. /***/ 329:
  952. /***/ (function(module, exports) {
  953. module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACUAAAAkCAMAAAA5HAOUAAAAQlBMVEUAAAD/IDD/KDj/Kjr/LDz/KTn/Kzv/Kjr/Kzv/LDz/Kzv/Kzv/Kzv/LDz/Kzv/LDz/LDz/Kzv/Kzv/LDz/LDv/LDyPingBAAAAFXRSTlMAECAwQFBfYHCAj5+gr7C/wNDf7/B6g4n4AAAAvUlEQVQ4y8XUyRKDIBAEUBZlUYxs8/+/mmiMWtQwkFzS51cFtF0y9v9w3oE0gG4iCa/Illo3tTaQgT2Gvnl6q0S+YIEjC4EGODPUz4uXiviZQk0JbkmTEkVJao6AJM7qrM4kIJLM1TYV2a+Yp5E/CggUCp9KeK6jfPUmqyzfRzTW1FguFEu5WochR8yBGEafspgyXcr+ph5db/TEh0aU19o3VHb71oXLuNq6D/ocANcBuxcztviHSGu+/Kc9AXSSLqTq6c2LAAAAAElFTkSuQmCC"
  954. /***/ }),
  955. /***/ 330:
  956. /***/ (function(module, exports) {
  957. module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACUAAAAkCAMAAAA5HAOUAAAAS1BMVEUAAABQUFBQUFBVVVVUVFRTU1NTU1NVVVVUVFRUVFRUVFRVVVVVVVVUVFRVVVVUVFRUVFRVVVVVVVVVVVVVVVVUVFRUVFRVVVVVVVUmEHPwAAAAGHRSTlMAECAwQFBfYHCAj5CfoK+wv8DP0N/g7/AGrtdjAAABEUlEQVQ4y8WUy5aDIBBEeUQeUVTUwP3/L53FaJIR1MxsxhX2udBdRakQ//9I+QFkwV5CGkBfUSNty3gBOR5SZtz55IlGiIZ0qqBnEEKISH8C3chKCCFU5nbcb9kG8iz1nsrcE/P2NpPuRu1MMt0CEJ8HyAiwdOZpnUsAefA/zNR+yADJbW4/gqvard3wWG9Ck9SxbJXW+4pMhybKibiuZqYjamLeTpCZrg515FcbnfE1yJPfVTXV6FlodoVSqErF1lD29IQyDnFfimUwPqM87b7UlsH2tbn+WBpW1dL0vZGrO6E+qu4SQOrUsSAzAtHaCIymTvUJcvj+hkKG1JdUAGb7yr2doZxLOL8Ltfbul/+0Lw1XEXqaPu71AAAAAElFTkSuQmCC"
  958. /***/ }),
  959. /***/ 331:
  960. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  961. "use strict";
  962. __webpack_require__.r(__webpack_exports__);
  963. /* 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_id_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(245);
  964. /* 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_id_vue_vue_type_style_index_0_lang_scss___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_id_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0__);
  965. /* 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_id_vue_vue_type_style_index_0_lang_scss___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_id_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  966. /***/ }),
  967. /***/ 332:
  968. /***/ (function(module, exports, __webpack_require__) {
  969. // Imports
  970. var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(3);
  971. var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false);
  972. // Module
  973. ___CSS_LOADER_EXPORT___.push([module.i, ".goods-details{padding:16px 0 44px}.goods-details .goods-info .goods-swiper{width:400px;border-radius:4px}.goods-details .goods-info .goods-swiper .swiper{margin:10px 0;padding:0 25px;--swiper-navigation-size:15px;--swiper-navigation-color:#888}.goods-details .goods-info .goods-swiper .swiper .swiper-button-next,.goods-details .goods-info .goods-swiper .swiper .swiper-button-prev{top:0;width:25px;height:100%;margin-top:0;background-size:12px 22px}.goods-details .goods-info .goods-swiper .swiper .swiper-button-prev{left:0}.goods-details .goods-info .goods-swiper .swiper .swiper-button-next{right:0}.goods-details .goods-info .goods-swiper .swiper .swiper-item{cursor:pointer;height:66px;width:66px;border:2px solid transparent}.goods-details .goods-info .goods-swiper .swiper .swiper-item~.swiper-item{margin-left:10px}.goods-details .goods-info .goods-swiper .swiper .swiper-item.active{border-color:#ff2c3c}.goods-details .goods-info .goods-swiper .current-img{width:100%;height:400px}.goods-details .goods-info .info-wrap{min-height:486px;border-radius:4px;padding:20px}.goods-details .goods-info .info-wrap .name{font-size:20px}.goods-details .goods-info .info-wrap .price-wrap{background:#f2f2f2;background-size:cover;height:80px;padding:0 50px 0 20px;margin-bottom:26px}.goods-details .goods-info .info-wrap .price-wrap.seckill{background:#ff2c3c}.goods-details .goods-info .info-wrap .price-wrap.seckill .count-down .item{width:30px;height:30px;background:rgba(0,0,0,.5);text-align:center;line-height:30px;border-radius:4px}.goods-details .goods-info .info-wrap .spec-wrap .spec{align-items:flex-start}.goods-details .goods-info .info-wrap .spec-wrap .spec .spec-name{margin-right:20px;margin-top:6px;flex:none}.goods-details .goods-info .info-wrap .spec-wrap .spec .spec-item{padding:0 20px;line-height:32px;border:1px solid hsla(0,0%,89.8%,.89804);border-radius:2px;margin-right:10px;margin-bottom:10px;cursor:pointer}.goods-details .goods-info .info-wrap .spec-wrap .spec .spec-item.active{color:#ff2c3c;background-color:#ffeeef;border-color:currentColor}.goods-details .goods-info .info-wrap .goods-num{margin-bottom:30px}.goods-details .goods-info .info-wrap .goods-num .num{margin-right:20px}.goods-details .goods-info .info-wrap .goods-btns .btn{margin-right:14px;text-align:center;width:120px;font-size:16px}.goods-details .goods-info .info-wrap .goods-btns .btn.collection{width:146px;line-height:42px;border:1px solid hsla(0,0%,89.8%,.89804);background-color:#fff;border-radius:4px;cursor:pointer;color:#666}.goods-details .goods-info .info-wrap .goods-btns .btn.collection:hover{color:#ff2c3c}.goods-details .goods-info .info-wrap .goods-btns .btn.collection .start-icon{width:18.5px;height:18px}.goods-details .goods-info .shop{width:210px;padding:16px}.goods-details .goods-info .shop .logo-img{width:62px;height:62px;border-radius:50%;overflow:hidden}.goods-details .goods-info .shop .el-rate__icon{font-size:16px}.goods-details .details-wrap{align-items:stretch}.goods-details .details-wrap .details{padding:10px 0;overflow:hidden}.goods-details .details-wrap .details .rich-text{padding:0 10px;width:100%;overflow:hidden}.goods-details .details-wrap .details .rich-text img{width:100%;display:block}.goods-details .details-wrap .details .rich-text p{margin:0}.goods-details .details-wrap .details .evaluation .evaluation-hd{height:80px;margin:0 10px}.goods-details .details-wrap .details .evaluation .evaluation-hd .rate{height:60px;width:220px;border-right:1px solid #e5e5e5;padding-left:10px;margin-right:40px}.goods-details .details-wrap .details .evaluation .evaluation-tab{margin:16px 20px}.goods-details .details-wrap .details .evaluation .evaluation-tab .item{border-radius:2px;cursor:pointer;height:32px;padding:6px 20px;color:#666;background-color:#f2f2f2;margin-right:10px}.goods-details .details-wrap .details .evaluation .evaluation-tab .item.active{color:#fff;background-color:#ff2c3c}.goods-details .goods-like{width:210px}.goods-details .goods-like .title{border-bottom:1px solid hsla(0,0%,89.8%,.89804);height:45px}.goods-details .goods-like .goods-list .item{padding:10px;display:block}.goods-details .goods-like .goods-list .item .goods-img{width:190px;height:190px;margin-bottom:10px}", ""]);
  974. // Exports
  975. module.exports = ___CSS_LOADER_EXPORT___;
  976. /***/ }),
  977. /***/ 369:
  978. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  979. "use strict";
  980. // ESM COMPAT FLAG
  981. __webpack_require__.r(__webpack_exports__);
  982. // 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!./pages/goods_details/_id.vue?vue&type=template&id=f2d94ef8&
  983. var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.goodsDetails.id)?_c('div',{staticClass:"goods-details"},[_vm._ssrNode("<div class=\"goods-info flex col-stretch\">","</div>",[_vm._ssrNode("<div class=\"goods-swiper m-r-16 bg-white flex-col\">","</div>",[_c('el-image',{staticClass:"current-img",attrs:{"preview-src-list":_vm.goodsImage.map(function (item) { return item.uri; }),"src":_vm.goodsImage[_vm.swiperIndex].uri}}),_vm._ssrNode(" "),_c('client-only',[_c('swiper',{ref:"mySwiper",staticClass:"swiper",attrs:{"options":_vm.swiperOptions}},[_vm._l((_vm.goodsImage),function(item,index){return _c('swiper-slide',{key:index,class:{
  984. 'swiper-item': true,
  985. active: index === _vm.swiperIndex,
  986. }},[_c('div',{staticStyle:{"width":"100%","height":"100%"},on:{"mouseover":function($event){_vm.swiperIndex = index}}},[_c('el-image',{staticStyle:{"width":"100%","height":"100%"},attrs:{"src":item.uri}})],1)])}),_vm._v(" "),_c('div',{staticClass:"swiper-button-prev",attrs:{"slot":"button-prev"},slot:"button-prev"}),_vm._v(" "),_c('div',{staticClass:"swiper-button-next",attrs:{"slot":"button-next"},slot:"button-next"})],2)],1)],2),_vm._ssrNode(" "),_vm._ssrNode("<div class=\"info-wrap bg-white flex-1\">","</div>",[_vm._ssrNode("<div class=\"name weight-500 m-b-16\">"+_vm._ssrEscape("\n "+_vm._s(_vm.goodsDetails.name)+"\n ")+"</div> "),(_vm.activity.type == 1)?_vm._ssrNode("<div class=\"price-wrap flex row-between white seckill\">","</div>",[_vm._ssrNode("<div class=\"price flex\" style=\"align-items: baseline\">","</div>",[_vm._ssrNode("<div class=\"m-r-8\">价格</div> "),_vm._ssrNode("<div>","</div>",[_c('price-formate',{attrs:{"price":_vm.checkedGoods.price || _vm.goodsDetails.price,"subscript-size":16,"first-size":22,"second-size":16}})],1),_vm._ssrNode(" "),_vm._ssrNode("<div class=\"line-through m-l-8 flex\">","</div>",[_vm._ssrNode("\n 原价\n "),_c('price-formate',{attrs:{"price":_vm.checkedGoods.market_price ||
  987. _vm.goodsDetails.market_price}})],2)],2),_vm._ssrNode(" "),_vm._ssrNode("<div class=\"flex\">","</div>",[_vm._ssrNode("<div class=\"white m-r-16\">距离结束还有</div> "),_c('count-down',{attrs:{"time":_vm.countTime,"is-slot":true},on:{"change":_vm.onChangeDate}},[_c('div',{staticClass:"flex row-center count-down xxl"},[_c('div',{staticClass:"item white"},[_vm._v("\n "+_vm._s(_vm.timeData.hours)+"\n ")]),_vm._v(" "),_c('div',{staticClass:"white",staticStyle:{"margin":"0 4px"}},[_vm._v(":")]),_vm._v(" "),_c('div',{staticClass:"item white"},[_vm._v("\n "+_vm._s(_vm.timeData.minutes)+"\n ")]),_vm._v(" "),_c('div',{staticClass:"white",staticStyle:{"margin":"0 4px"}},[_vm._v(":")]),_vm._v(" "),_c('div',{staticClass:"item white"},[_vm._v("\n "+_vm._s(_vm.timeData.seconds)+"\n ")])])])],2)],2):_vm._ssrNode("<div class=\"price-wrap flex row-between lighter\">","</div>",[_vm._ssrNode("<div class=\"price flex\" style=\"align-items: baseline\">","</div>",[_vm._ssrNode("<div class=\"m-r-8\">价格</div> "),_vm._ssrNode("<div class=\"primary\">","</div>",[_c('price-formate',{attrs:{"price":_vm.checkedGoods.price || _vm.goodsDetails.price,"subscript-size":16,"first-size":22,"second-size":16}})],1),_vm._ssrNode(" "),_vm._ssrNode("<div class=\"line-through m-l-8 muted\">","</div>",[_c('price-formate',{attrs:{"price":_vm.checkedGoods.market_price ||
  988. _vm.goodsDetails.market_price}})],1)],2),_vm._ssrNode(" <div class=\"flex\">"+((_vm.goodsDetails.stock !== true)?("<div style=\"margin-right: 60px\"><div class=\"m-b-8\">库存</div> <div>"+_vm._ssrEscape("\n "+_vm._s(_vm.checkedGoods.stock || _vm.goodsDetails.stock)+"\n ")+"</div></div>"):"<!---->")+" <div><div class=\"m-b-8\">销量</div> <div>"+_vm._ssrEscape(_vm._s(_vm.goodsDetails.sales_sum))+"</div></div></div>")],2),_vm._ssrNode(" <div class=\"spec-wrap\">"+(_vm._ssrList((_vm.goodsSpec),function(item,index){return ("<div class=\"spec flex m-b-16\"><div class=\"lighter spec-name\">"+_vm._ssrEscape(_vm._s(item.name))+"</div> <div class=\"spec-list flex flex-wrap\">"+(_vm._ssrList((item.spec_value),function(specitem,sindex){return ("<div"+(_vm._ssrClass(null,[
  989. 'spec-item lighter',
  990. { active: specitem.checked } ]))+">"+_vm._ssrEscape("\n "+_vm._s(specitem.value)+"\n ")+"</div>")}))+"</div></div>")}))+"</div> "),_vm._ssrNode("<div class=\"goods-num flex\">","</div>",[_vm._ssrNode("<div class=\"num lighter\">数量</div> "),_c('number-box',{attrs:{"min":1,"max":_vm.checkedGoods.stock},model:{value:(_vm.goodsNum),callback:function ($$v) {_vm.goodsNum=$$v},expression:"goodsNum"}})],2),_vm._ssrNode(" "),_vm._ssrNode("<div class=\"goods-btns flex lg\">","</div>",[_c('el-button',{staticClass:"btn white",attrs:{"type":"primary"},on:{"click":_vm.onBuyNow}},[_vm._v("\n 立即购买\n ")]),_vm._ssrNode(" "),(_vm.activity.type != 1)?_c('el-button',{staticClass:"btn addcart",attrs:{"type":"primary","plain":""},on:{"click":_vm.onAddCart}},[_vm._v("\n 加入购物车\n ")]):_vm._e(),_vm._ssrNode(" <div class=\"btn collection flex row-center\"><img"+(_vm._ssrAttr("src",_vm.goodsDetails.is_collect
  991. ? __webpack_require__(329)
  992. : __webpack_require__(330)))+" class=\"start-icon m-r-8\"> <span>"+_vm._ssrEscape(_vm._s(_vm.goodsDetails.is_collect ? '取消收藏' : '收藏商品'))+"</span></div>")],2)],2),_vm._ssrNode(" "),_vm._ssrNode("<div class=\"shop m-l-16 bg-white\">","</div>",[_vm._ssrNode("<div class=\"shop-logo flex-col col-center\">","</div>",[_c('el-image',{staticClass:"logo-img",attrs:{"src":_vm.shop.logo}}),_vm._ssrNode(" "),_c('nuxt-link',{staticClass:"m-t-10",attrs:{"to":("/shop_street_detail?id=" + (_vm.shop.id))}},[(_vm.shop.type == 1)?_c('el-tag',{attrs:{"size":"mini"}},[_vm._v("自营")]):_vm._e(),_vm._v(" "),_c('span',{staticClass:"weight-500"},[_vm._v(_vm._s(_vm.shop.name))])],1),_vm._ssrNode(" <div class=\"xs muted m-t-10 line-5\">"+_vm._ssrEscape("\n "+_vm._s(_vm.shop.intro)+"\n ")+"</div>")],2),_vm._ssrNode(" <div class=\"flex m-t-20\"><div class=\"flex-1 text-center\"><div class=\"xxl m-b-10\">"+_vm._ssrEscape(_vm._s(_vm.shop.goods_on_sale))+"</div> <div>全部商品</div></div> <div class=\"flex-1 text-center\"><div class=\"xxl m-b-10\">"+_vm._ssrEscape(_vm._s(_vm.shop.follow_num))+"</div> <div>关注人数</div></div></div> "),_c('el-divider'),_vm._ssrNode(" "),_vm._ssrNode("<div class=\"flex xs m-b-16\">","</div>",[_vm._ssrNode("<div class=\"m-r-12\">店铺星级</div> "),_vm._ssrNode("<div class=\"m-t-5\">","</div>",[_c('el-rate',{attrs:{"disabled":""},model:{value:(_vm.shop.star),callback:function ($$v) {_vm.$set(_vm.shop, "star", $$v)},expression:"shop.star"}})],1)],2),_vm._ssrNode(" <div class=\"flex xs m-b-16\"><div class=\"m-r-12\">店铺评分</div> <div>"+_vm._ssrEscape(_vm._s(_vm.shop.score)+"分")+"</div></div> "),_vm._ssrNode("<div>","</div>",[_c('el-button',{attrs:{"type":"primary","size":"mini"},on:{"click":function($event){return _vm.$router.push(("/shop_street_detail?id=" + (_vm.shop.id)))}}},[_vm._v("进入店铺")]),_vm._ssrNode(" "),_c('el-button',{attrs:{"size":"mini"},on:{"click":_vm.changeShopFollow}},[_vm._v(_vm._s(_vm.shop.shop_follow_status == 1 ? '已关注' : '关注店铺'))])],2),_vm._ssrNode(" "),_c('el-popover',{attrs:{"placement":"bottom","width":"200","trigger":"hover"}},[_c('div',[_c('el-image',{staticStyle:{"width":"100%"},attrs:{"src":_vm.shop.customer_image}})],1),_vm._v(" "),_c('div',{staticClass:"xs lighter text-center m-t-30",attrs:{"slot":"reference"},slot:"reference"},[_c('i',{staticClass:"el-icon-chat-dot-round nr"}),_vm._v(" "),_c('span',[_vm._v("联系客服")])])])],2)],2),_vm._ssrNode(" "),_vm._ssrNode("<div class=\"details-wrap flex m-t-16\">","</div>",[_vm._ssrNode("<div class=\"details bg-white flex-1\">","</div>",[_c('el-tabs',{model:{value:(_vm.active),callback:function ($$v) {_vm.active=$$v},expression:"active"}},[_c('el-tab-pane',{attrs:{"label":"商品详情"}},[_c('div',{staticClass:"rich-text",domProps:{"innerHTML":_vm._s(_vm.goodsDetails.content)}})]),_vm._v(" "),_c('el-tab-pane',{attrs:{"label":"商品评价"}},[_c('div',{staticClass:"evaluation"},[_c('div',{staticClass:"evaluation-hd flex"},[_c('div',{staticClass:"rate flex"},[_c('div',{staticClass:"lighter m-r-8"},[_vm._v("好评率")]),_vm._v(" "),_c('div',{staticClass:"primary",staticStyle:{"font-size":"30px"}},[_vm._v("\n "+_vm._s(_vm.goodsDetails.comment.percent)+"\n ")])]),_vm._v(" "),_c('div',{staticClass:"score flex"},[_c('span',{staticClass:"m-r-8 lighter"},[_vm._v("评分")]),_vm._v(" "),_c('el-rate',{attrs:{"value":_vm.goodsDetails.comment.goods_comment,"disabled":"","allow-half":""}})],1)]),_vm._v(" "),_c('div',{staticClass:"evaluation-tab flex"},_vm._l((_vm.comment.comment),function(item,index){return _c('div',{key:index,class:[
  993. 'item',
  994. { active: _vm.commentActive == item.id } ],on:{"click":function($event){_vm.commentActive = item.id}}},[_vm._v("\n "+_vm._s(item.name)+"("+_vm._s(item.count)+")\n ")])}),0)]),_vm._v(" "),_c('div',[_vm._l((_vm.comment.comment),function(item,index){return [(_vm.commentActive == item.id)?_c('comment-list',{key:index,attrs:{"goods-id":_vm.id,"type":item.id}}):_vm._e()]})],2)])],1)],1),_vm._ssrNode(" "),(_vm.shop.goods_list.length)?_vm._ssrNode("<div class=\"goods-like m-l-16\">","</div>",[_vm._ssrNode("<div class=\"title bg-white flex p-l-15\">店铺推荐</div> "),_vm._ssrNode("<div class=\"goods-list\">","</div>",[_vm._l((_vm.shop.goods_list),function(item,index){return [(index < 5)?_c('nuxt-link',{key:index,staticClass:"item bg-white m-b-16",attrs:{"to":("/goods_details/" + (item.id))}},[_c('el-image',{staticClass:"goods-img",attrs:{"src":item.image}}),_vm._v(" "),_c('div',{staticClass:"goods-name line-2"},[_vm._v("\n "+_vm._s(item.name)+"\n ")]),_vm._v(" "),_c('div',{staticClass:"price flex m-t-8"},[_c('div',{staticClass:"primary m-r-8"},[_c('price-formate',{attrs:{"price":item.min_price,"first-size":16}})],1),_vm._v(" "),_c('div',{staticClass:"muted sm line-through"},[_c('price-formate',{attrs:{"price":item.market_price}})],1)])],1):_vm._e()]})],2)],2):_vm._e()],2)],2):_vm._e()}
  995. var staticRenderFns = []
  996. // CONCATENATED MODULE: ./pages/goods_details/_id.vue?vue&type=template&id=f2d94ef8&
  997. // EXTERNAL MODULE: external "vuex"
  998. var external_vuex_ = __webpack_require__(2);
  999. // EXTERNAL MODULE: ./node_modules/element-ui/lib/element-ui.common.js
  1000. var element_ui_common = __webpack_require__(14);
  1001. // 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!./pages/goods_details/_id.vue?vue&type=script&lang=js&
  1002. //
  1003. //
  1004. //
  1005. //
  1006. //
  1007. //
  1008. //
  1009. //
  1010. //
  1011. //
  1012. //
  1013. //
  1014. //
  1015. //
  1016. //
  1017. //
  1018. //
  1019. //
  1020. //
  1021. //
  1022. //
  1023. //
  1024. //
  1025. //
  1026. //
  1027. //
  1028. //
  1029. //
  1030. //
  1031. //
  1032. //
  1033. //
  1034. //
  1035. //
  1036. //
  1037. //
  1038. //
  1039. //
  1040. //
  1041. //
  1042. //
  1043. //
  1044. //
  1045. //
  1046. //
  1047. //
  1048. //
  1049. //
  1050. //
  1051. //
  1052. //
  1053. //
  1054. //
  1055. //
  1056. //
  1057. //
  1058. //
  1059. //
  1060. //
  1061. //
  1062. //
  1063. //
  1064. //
  1065. //
  1066. //
  1067. //
  1068. //
  1069. //
  1070. //
  1071. //
  1072. //
  1073. //
  1074. //
  1075. //
  1076. //
  1077. //
  1078. //
  1079. //
  1080. //
  1081. //
  1082. //
  1083. //
  1084. //
  1085. //
  1086. //
  1087. //
  1088. //
  1089. //
  1090. //
  1091. //
  1092. //
  1093. //
  1094. //
  1095. //
  1096. //
  1097. //
  1098. //
  1099. //
  1100. //
  1101. //
  1102. //
  1103. //
  1104. //
  1105. //
  1106. //
  1107. //
  1108. //
  1109. //
  1110. //
  1111. //
  1112. //
  1113. //
  1114. //
  1115. //
  1116. //
  1117. //
  1118. //
  1119. //
  1120. //
  1121. //
  1122. //
  1123. //
  1124. //
  1125. //
  1126. //
  1127. //
  1128. //
  1129. //
  1130. //
  1131. //
  1132. //
  1133. //
  1134. //
  1135. //
  1136. //
  1137. //
  1138. //
  1139. //
  1140. //
  1141. //
  1142. //
  1143. //
  1144. //
  1145. //
  1146. //
  1147. //
  1148. //
  1149. //
  1150. //
  1151. //
  1152. //
  1153. //
  1154. //
  1155. //
  1156. //
  1157. //
  1158. //
  1159. //
  1160. //
  1161. //
  1162. //
  1163. //
  1164. //
  1165. //
  1166. //
  1167. //
  1168. //
  1169. //
  1170. //
  1171. //
  1172. //
  1173. //
  1174. //
  1175. //
  1176. //
  1177. //
  1178. //
  1179. //
  1180. //
  1181. //
  1182. //
  1183. //
  1184. //
  1185. //
  1186. //
  1187. //
  1188. //
  1189. //
  1190. //
  1191. //
  1192. //
  1193. //
  1194. //
  1195. //
  1196. //
  1197. //
  1198. //
  1199. //
  1200. //
  1201. //
  1202. //
  1203. //
  1204. //
  1205. //
  1206. //
  1207. //
  1208. //
  1209. //
  1210. //
  1211. //
  1212. //
  1213. //
  1214. //
  1215. //
  1216. //
  1217. //
  1218. //
  1219. //
  1220. //
  1221. //
  1222. //
  1223. //
  1224. //
  1225. //
  1226. //
  1227. //
  1228. //
  1229. //
  1230. //
  1231. //
  1232. //
  1233. //
  1234. //
  1235. //
  1236. //
  1237. //
  1238. //
  1239. //
  1240. //
  1241. //
  1242. //
  1243. //
  1244. //
  1245. //
  1246. //
  1247. //
  1248. //
  1249. //
  1250. //
  1251. //
  1252. //
  1253. //
  1254. //
  1255. //
  1256. //
  1257. //
  1258. //
  1259. //
  1260. //
  1261. //
  1262. //
  1263. //
  1264. //
  1265. //
  1266. //
  1267. //
  1268. //
  1269. //
  1270. //
  1271. //
  1272. //
  1273. //
  1274. //
  1275. //
  1276. //
  1277. //
  1278. //
  1279. //
  1280. //
  1281. //
  1282. //
  1283. //
  1284. //
  1285. //
  1286. //
  1287. //
  1288. //
  1289. //
  1290. //
  1291. //
  1292. //
  1293. //
  1294. //
  1295. //
  1296. //
  1297. //
  1298. //
  1299. //
  1300. //
  1301. //
  1302. //
  1303. //
  1304. //
  1305. //
  1306. //
  1307. //
  1308. //
  1309. //
  1310. //
  1311. //
  1312. //
  1313. //
  1314. //
  1315. //
  1316. //
  1317. //
  1318. //
  1319. //
  1320. //
  1321. //
  1322. //
  1323. //
  1324. //
  1325. //
  1326. //
  1327. //
  1328. //
  1329. //
  1330. //
  1331. //
  1332. //
  1333. //
  1334. //
  1335. //
  1336. //
  1337. //
  1338. //
  1339. //
  1340. //
  1341. //
  1342. //
  1343. //
  1344. //
  1345. //
  1346. //
  1347. //
  1348. //
  1349. //
  1350. //
  1351. //
  1352. //
  1353. //
  1354. /* harmony default export */ var _idvue_type_script_lang_js_ = ({
  1355. head() {
  1356. return {
  1357. title: this.$store.getters.headTitle,
  1358. link: [{
  1359. rel: 'icon',
  1360. type: 'image/x-icon',
  1361. href: this.$store.getters.favicon
  1362. }]
  1363. };
  1364. },
  1365. async asyncData({
  1366. params,
  1367. $get,
  1368. app
  1369. }) {
  1370. const {
  1371. data,
  1372. code,
  1373. msg
  1374. } = await $get('goods/getGoodsDetail', {
  1375. params: {
  1376. goods_id: params.id
  1377. }
  1378. });
  1379. if (code == 0) {
  1380. setTimeout(() => app.router.back(), 1500);
  1381. }
  1382. return {
  1383. goodsDetails: data,
  1384. goodsImage: data.goods_image,
  1385. activity: data.activity,
  1386. shop: data.shop
  1387. };
  1388. },
  1389. data() {
  1390. return {
  1391. goodsDetails: {},
  1392. goodsImage: [],
  1393. activity: {},
  1394. shop: {
  1395. goods_list: []
  1396. },
  1397. swiperOptions: {
  1398. pagination: {
  1399. el: '.swiper-pagination',
  1400. clickable: true
  1401. },
  1402. navigation: {
  1403. nextEl: '.swiper-button-next',
  1404. prevEl: '.swiper-button-prev'
  1405. },
  1406. preventClicks: true,
  1407. slidesPerView: 'auto'
  1408. },
  1409. active: '0',
  1410. commentActive: 0,
  1411. swiperIndex: 0,
  1412. checkedGoods: {},
  1413. comment: {},
  1414. goodsNum: 1,
  1415. goodsSpec: [],
  1416. id: '',
  1417. timeData: {}
  1418. };
  1419. },
  1420. created() {
  1421. this.id = this.$route.params.id;
  1422. this.getComment(this.id);
  1423. },
  1424. methods: { ...Object(external_vuex_["mapActions"])(['getPublicData']),
  1425. onClickSlide(e) {
  1426. this.swiperIndex = e;
  1427. },
  1428. onChoseSpecItem(id, specid) {
  1429. const {
  1430. goodsSpec
  1431. } = this;
  1432. goodsSpec.forEach(item => {
  1433. if (item.spec_value && item.id == id) {
  1434. item.spec_value.forEach(specitem => {
  1435. specitem.checked = 0;
  1436. if (specitem.id == specid) {
  1437. specitem.checked = 1;
  1438. }
  1439. });
  1440. }
  1441. });
  1442. this.goodsSpec = [...goodsSpec];
  1443. },
  1444. async onAddCart() {
  1445. const {
  1446. goodsNum,
  1447. checkedGoods: {
  1448. id
  1449. }
  1450. } = this;
  1451. const {
  1452. code,
  1453. data,
  1454. msg
  1455. } = await this.$post('cart/add', {
  1456. item_id: id,
  1457. goods_num: goodsNum
  1458. });
  1459. if (code == 1) {
  1460. this.getPublicData();
  1461. this.$message({
  1462. message: msg,
  1463. type: 'success'
  1464. });
  1465. }
  1466. },
  1467. async changeShopFollow() {
  1468. const {
  1469. code,
  1470. msg
  1471. } = await this.$post('shop_follow/changeStatus', {
  1472. shop_id: this.shop.id
  1473. });
  1474. if (code == 1) {
  1475. this.$message({
  1476. message: msg,
  1477. type: 'success'
  1478. });
  1479. this.getGoodsDetail();
  1480. }
  1481. },
  1482. onBuyNow() {
  1483. const {
  1484. goodsNum,
  1485. checkedGoods: {
  1486. id
  1487. }
  1488. } = this;
  1489. const goods = [{
  1490. item_id: id,
  1491. num: goodsNum,
  1492. goods_id: this.id,
  1493. shop_id: this.shop.id
  1494. }];
  1495. this.$router.push({
  1496. path: '/confirm_order',
  1497. query: {
  1498. data: encodeURIComponent(JSON.stringify({
  1499. goods,
  1500. type: 'buy'
  1501. }))
  1502. }
  1503. });
  1504. },
  1505. async getGoodsDetail() {
  1506. const {
  1507. data,
  1508. code
  1509. } = await this.$get('goods/getGoodsDetail', {
  1510. params: {
  1511. goods_id: this.id
  1512. }
  1513. });
  1514. if (code == 1) {
  1515. this.goodsDetails = data;
  1516. this.shop = data.shop;
  1517. }
  1518. },
  1519. async onCollectionGoods() {
  1520. const {
  1521. data,
  1522. code,
  1523. msg
  1524. } = await this.$post('goods_collect/changeStatus', {
  1525. goods_id: this.id
  1526. });
  1527. if (code == 1) {
  1528. this.$message({
  1529. message: msg,
  1530. type: 'success'
  1531. });
  1532. this.getGoodsDetail();
  1533. }
  1534. },
  1535. async getComment() {
  1536. const {
  1537. data,
  1538. code
  1539. } = await this.$get('/goods_comment/category', {
  1540. params: {
  1541. goods_id: this.id
  1542. }
  1543. });
  1544. if (code == 1) {
  1545. this.comment = data;
  1546. this.commentActive = data.comment[0].id;
  1547. }
  1548. },
  1549. onChangeDate(e) {
  1550. let timeData = {};
  1551. for (let prop in e) {
  1552. if (prop !== 'milliseconds') timeData[prop] = ('0' + e[prop]).slice(-2);
  1553. }
  1554. this.timeData = timeData;
  1555. }
  1556. },
  1557. watch: {
  1558. goodsSpec: {
  1559. immediate: true,
  1560. handler(value) {
  1561. const {
  1562. goods_item
  1563. } = this.goodsDetails;
  1564. let keyArr = [];
  1565. value.forEach(item => {
  1566. if (item.spec_value) {
  1567. item.spec_value.forEach(specitem => {
  1568. if (specitem.checked) {
  1569. keyArr.push(specitem.id);
  1570. }
  1571. });
  1572. }
  1573. });
  1574. if (!keyArr.length) return;
  1575. let key = keyArr.join(',');
  1576. let index = goods_item.findIndex(item => {
  1577. return item.spec_value_ids == key;
  1578. });
  1579. if (index == -1) {
  1580. index = 0;
  1581. }
  1582. this.checkedGoods = goods_item[index];
  1583. console.log(this.checkedGoods);
  1584. }
  1585. },
  1586. goodsDetails: {
  1587. immediate: true,
  1588. handler(value) {
  1589. if (!value.goods_spec) return;
  1590. value.goods_spec.forEach(item => {
  1591. item.spec_value.forEach((specitem, specindex) => {
  1592. if (specindex == 0) {
  1593. specitem.checked = 1;
  1594. } else {
  1595. specitem.checked = 0;
  1596. }
  1597. });
  1598. });
  1599. this.goodsSpec = [...value.goods_spec];
  1600. }
  1601. }
  1602. },
  1603. computed: {
  1604. countTime() {
  1605. const end_time = this.activity.end_time;
  1606. return end_time ? end_time - Date.now() / 1000 : 0;
  1607. }
  1608. }
  1609. });
  1610. // CONCATENATED MODULE: ./pages/goods_details/_id.vue?vue&type=script&lang=js&
  1611. /* harmony default export */ var goods_details_idvue_type_script_lang_js_ = (_idvue_type_script_lang_js_);
  1612. // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
  1613. var componentNormalizer = __webpack_require__(1);
  1614. // CONCATENATED MODULE: ./pages/goods_details/_id.vue
  1615. function injectStyles (context) {
  1616. var style0 = __webpack_require__(331)
  1617. if (style0.__inject__) style0.__inject__(context)
  1618. }
  1619. /* normalize component */
  1620. var component = Object(componentNormalizer["a" /* default */])(
  1621. goods_details_idvue_type_script_lang_js_,
  1622. render,
  1623. staticRenderFns,
  1624. false,
  1625. injectStyles,
  1626. null,
  1627. "b793ee3c"
  1628. )
  1629. /* harmony default export */ var _id = __webpack_exports__["default"] = (component.exports);
  1630. /* nuxt-component-imports */
  1631. installComponents(component, {PriceFormate: __webpack_require__(137).default,CountDown: __webpack_require__(144).default,NumberBox: __webpack_require__(192).default,CommentList: __webpack_require__(252).default})
  1632. /***/ })
  1633. };;
  1634. //# sourceMappingURL=_id.js.map