ad-item.js 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. exports.ids = [2];
  2. exports.modules = {
  3. /***/ 145:
  4. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  5. "use strict";
  6. /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return trottle; });
  7. /* unused harmony export strToParams */
  8. /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return paramsToStr; });
  9. /* unused harmony export copyClipboard */
  10. //节流
  11. const trottle = (func, time = 1000, context) => {
  12. let previous = new Date(0).getTime();
  13. return function (...args) {
  14. let now = new Date().getTime();
  15. if (now - previous > time) {
  16. func.apply(context, args);
  17. previous = now;
  18. }
  19. };
  20. }; //获取url后的参数 以对象返回
  21. function strToParams(str) {
  22. var newparams = {};
  23. for (let item of str.split('&')) {
  24. newparams[item.split('=')[0]] = item.split('=')[1];
  25. }
  26. return newparams;
  27. } //对象参数转为以?&拼接的字符
  28. function paramsToStr(params) {
  29. let p = '';
  30. if (typeof params == 'object') {
  31. p = '?';
  32. for (let props in params) {
  33. p += `${props}=${params[props]}&`;
  34. }
  35. p = p.slice(0, -1);
  36. }
  37. return p;
  38. }
  39. /**
  40. * @description 复制到剪切板
  41. * @param value { String } 复制内容
  42. * @return { Promise } resolve | reject
  43. */
  44. const copyClipboard = value => {
  45. const elInput = document.createElement('input');
  46. elInput.setAttribute('value', value);
  47. document.body.appendChild(elInput);
  48. elInput.select();
  49. try {
  50. if (document.execCommand('copy')) return Promise.resolve();else throw new Error();
  51. } catch (err) {
  52. return Promise.reject(err);
  53. } finally {
  54. document.body.removeChild(elInput);
  55. }
  56. };
  57. /***/ }),
  58. /***/ 147:
  59. /***/ (function(module, exports, __webpack_require__) {
  60. // style-loader: Adds some css to the DOM by adding a <style> tag
  61. // load the styles
  62. var content = __webpack_require__(153);
  63. if(content.__esModule) content = content.default;
  64. if(typeof content === 'string') content = [[module.i, content, '']];
  65. if(content.locals) module.exports = content.locals;
  66. // add CSS to SSR context
  67. var add = __webpack_require__(4).default
  68. module.exports.__inject__ = function (context) {
  69. add("532bec65", content, true, context)
  70. };
  71. /***/ }),
  72. /***/ 152:
  73. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  74. "use strict";
  75. __webpack_require__.r(__webpack_exports__);
  76. /* 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_ad_item_vue_vue_type_style_index_0_id_368017b1_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(147);
  77. /* 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_ad_item_vue_vue_type_style_index_0_id_368017b1_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_ad_item_vue_vue_type_style_index_0_id_368017b1_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__);
  78. /* 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_ad_item_vue_vue_type_style_index_0_id_368017b1_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_ad_item_vue_vue_type_style_index_0_id_368017b1_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
  79. /***/ }),
  80. /***/ 153:
  81. /***/ (function(module, exports, __webpack_require__) {
  82. // Imports
  83. var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(3);
  84. var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false);
  85. // Module
  86. ___CSS_LOADER_EXPORT___.push([module.i, ".ad-item[data-v-368017b1]{width:100%;height:100%;cursor:pointer}", ""]);
  87. // Exports
  88. module.exports = ___CSS_LOADER_EXPORT___;
  89. /***/ }),
  90. /***/ 155:
  91. /***/ (function(module, __webpack_exports__, __webpack_require__) {
  92. "use strict";
  93. // ESM COMPAT FLAG
  94. __webpack_require__.r(__webpack_exports__);
  95. // 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/ad-item.vue?vue&type=template&id=368017b1&scoped=true&
  96. var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"ad-item",on:{"click":function($event){$event.stopPropagation();return _vm.goPage(_vm.item)}}},[_c('el-image',{staticStyle:{"width":"100%","height":"100%"},attrs:{"src":_vm.item.image,"fit":"cover"}})],1)}
  97. var staticRenderFns = []
  98. // CONCATENATED MODULE: ./components/ad-item.vue?vue&type=template&id=368017b1&scoped=true&
  99. // EXTERNAL MODULE: ./utils/tools.js
  100. var tools = __webpack_require__(145);
  101. // 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/ad-item.vue?vue&type=script&lang=js&
  102. //
  103. //
  104. //
  105. //
  106. //
  107. //
  108. /* harmony default export */ var ad_itemvue_type_script_lang_js_ = ({
  109. components: {},
  110. props: {
  111. item: {
  112. type: Object,
  113. default: () => ({})
  114. }
  115. },
  116. methods: {
  117. goPage(item) {
  118. let {
  119. link_type,
  120. link,
  121. params
  122. } = item;
  123. switch (link_type) {
  124. case 3:
  125. window.open(item.link);
  126. break;
  127. default:
  128. if (["/goods_details"].includes(link)) {
  129. link += `/${params.id}`;
  130. } else {
  131. link += Object(tools["a" /* paramsToStr */])(params);
  132. }
  133. this.$router.push({
  134. path: link
  135. });
  136. }
  137. }
  138. }
  139. });
  140. // CONCATENATED MODULE: ./components/ad-item.vue?vue&type=script&lang=js&
  141. /* harmony default export */ var components_ad_itemvue_type_script_lang_js_ = (ad_itemvue_type_script_lang_js_);
  142. // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
  143. var componentNormalizer = __webpack_require__(1);
  144. // CONCATENATED MODULE: ./components/ad-item.vue
  145. function injectStyles (context) {
  146. var style0 = __webpack_require__(152)
  147. if (style0.__inject__) style0.__inject__(context)
  148. }
  149. /* normalize component */
  150. var component = Object(componentNormalizer["a" /* default */])(
  151. components_ad_itemvue_type_script_lang_js_,
  152. render,
  153. staticRenderFns,
  154. false,
  155. injectStyles,
  156. "368017b1",
  157. "6dd301aa"
  158. )
  159. /* harmony default export */ var ad_item = __webpack_exports__["default"] = (component.exports);
  160. /***/ })
  161. };;
  162. //# sourceMappingURL=ad-item.js.map