baiqiu-cms-decoration-dg 0.0.14 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -18
- package/babel.config.js +5 -0
- package/dist/css/app.d43615c0.css +1 -0
- package/dist/css/chunk-vendors.ef1800aa.css +7 -0
- package/dist/favicon.ico +0 -0
- package/dist/index.html +1 -0
- package/dist/js/app.453dd14c.js +2 -0
- package/dist/js/app.453dd14c.js.map +1 -0
- package/dist/js/chunk-vendors.cfd53f93.js +37 -0
- package/dist/js/chunk-vendors.cfd53f93.js.map +1 -0
- package/package.json +61 -48
- package/public/favicon.ico +0 -0
- package/public/index.html +17 -0
- package/src/App.vue +594 -1007
- package/src/components/cms/buttonItem/buttonItem.js +1 -5
- package/src/components/cms/cms.js +11 -11
- package/src/components/cms/cms.vue +2 -2
- package/src/components/cms/imgNav/imgNav.js +0 -1
- package/src/components/cms/mixin.js +3 -8
- package/src/components/cms/productItem/productItem.js +5 -8
- package/src/components/cms/productItem/productItem.scss +2 -2
- package/src/components/cms/singleLayout/singleLayout.vue +6 -6
- package/src/components/cms/slideLayout/slideLayout.js +1 -1
- package/src/components/cms/tabLayout/tabLayout.js +3 -3
- package/src/components/cms/textItem/textItem.js +62 -69
- package/src/index.js +15 -18
- package/src/main.js +8 -7
- package/src/utils/http-client.js +0 -10
- package/webpack.config.js +1 -5
- package/.babelrc +0 -17
- package/.editorconfig +0 -9
- package/.prettierrc +0 -8
- package/dist/baiqiu-cms-decoration.min.js +0 -19
- package/dist/baiqiu-cms-decoration.min.js.map +0 -1
- package/dist/iconfont.svg +0 -1
- package/index.html +0 -11
- /package/dist/{font/iconfont.ttf → fonts/iconfont.529b3ed0.ttf} +0 -0
- /package/dist/{font/iconfont.eot → fonts/iconfont.580c918e.eot} +0 -0
- /package/dist/{font/iconfont.woff → fonts/iconfont.ea5b1aa2.woff} +0 -0
- /package/dist/{font/iconfont.svg → img/iconfont.654cc65b.svg} +0 -0
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/components/cms/hotspot/hotspot.vue?712a","webpack:///./src/components/cms/productItem/productItem.vue?9c96","webpack:///./src/components/cms/slideLayout/slideLayout.vue?4ba6","webpack:///./src/components/cms/imgNav/imgNav.vue?61af","webpack:///./src/components/cms/swiperItem/swiperItem.vue?a219","webpack:///./src/components/cms/videoItem/videoItem.vue?59ea","webpack:///./src/App.vue?5584","webpack:///./src/components/cms/cms.vue?f284","webpack:///./src/components/cms/singleLayout/singleLayout.vue?762a","webpack:///./src/components/cms/textItem/textItem.vue?1559","webpack:///./src/components/cms/mixin.js","webpack:///./src/utils/http-client.js","webpack:///./src/api/com-service.js","webpack:///./src/utils/utils.js","webpack:///./src/components/cms/textItem/textItem.js","webpack:///src/components/cms/textItem/textItem.vue","webpack:///./src/components/cms/textItem/textItem.vue?62b0","webpack:///./src/components/cms/textItem/textItem.vue","webpack:///./src/components/cms/textItem/index.js","webpack:///./src/components/cms/imgNav/imgNav.vue?f363","webpack:///./src/components/cms/hotspot/hotspot.vue?7f49","webpack:///./src/components/cms/hotspot/hotspot.js","webpack:///src/components/cms/hotspot/hotspot.vue","webpack:///./src/components/cms/hotspot/hotspot.vue?db63","webpack:///./src/components/cms/hotspot/hotspot.vue","webpack:///./src/components/cms/hotspot/index.js","webpack:///./src/components/cms/imgNav/imgNav.js","webpack:///src/components/cms/imgNav/imgNav.vue","webpack:///./src/components/cms/imgNav/imgNav.vue?67d5","webpack:///./src/components/cms/imgNav/imgNav.vue","webpack:///./src/components/cms/imgNav/index.js","webpack:///./src/components/cms/videoItem/videoItem.vue?cf00","webpack:///./src/components/cms/videoPlayer/videoPlayer.vue?9321","webpack:///./src/components/cms/videoPlayer/videoPlayer.js","webpack:///src/components/cms/videoPlayer/videoPlayer.vue","webpack:///./src/components/cms/videoPlayer/videoPlayer.vue?4659","webpack:///./src/components/cms/videoPlayer/videoPlayer.vue","webpack:///./src/components/cms/videoPlayer/index.js","webpack:///./src/components/cms/videoItem/videoItem.js","webpack:///src/components/cms/videoItem/videoItem.vue","webpack:///./src/components/cms/videoItem/videoItem.vue?0faa","webpack:///./src/components/cms/videoItem/videoItem.vue","webpack:///./src/components/cms/videoItem/index.js","webpack:///./src/components/cms/swiperItem/swiperItem.vue?0265","webpack:///./src/components/cms/swiperItem/swiperItem.js","webpack:///src/components/cms/swiperItem/swiperItem.vue","webpack:///./src/components/cms/swiperItem/swiperItem.vue?5b19","webpack:///./src/components/cms/swiperItem/swiperItem.vue","webpack:///./src/components/cms/swiperItem/index.js","webpack:///./src/components/cms/buttonItem/buttonItem.vue?a9a4","webpack:///./src/components/cms/buttonItem/buttonItem.js","webpack:///src/components/cms/buttonItem/buttonItem.vue","webpack:///./src/components/cms/buttonItem/buttonItem.vue?53a4","webpack:///./src/components/cms/buttonItem/buttonItem.vue","webpack:///./src/components/cms/buttonItem/index.js","webpack:///./src/components/cms/productItem/productItem.vue?29d5","webpack:///./src/components/cms/productItem/productItem.js","webpack:///src/components/cms/productItem/productItem.vue","webpack:///./src/components/cms/productItem/productItem.vue?2e67","webpack:///./src/components/cms/productItem/productItem.vue","webpack:///./src/components/cms/productItem/index.js","webpack:///./src/components/cms/singleLayout/singleLayout.js","webpack:///src/components/cms/singleLayout/singleLayout.vue","webpack:///./src/components/cms/singleLayout/singleLayout.vue?8a0a","webpack:///./src/components/cms/singleLayout/singleLayout.vue","webpack:///./src/components/cms/singleLayout/index.js","webpack:///./src/components/cms/multipleLayout/multipleLayout.vue?91d5","webpack:///./src/components/cms/multipleLayout/multipleLayout.js","webpack:///src/components/cms/multipleLayout/multipleLayout.vue","webpack:///./src/components/cms/multipleLayout/multipleLayout.vue?d02e","webpack:///./src/components/cms/multipleLayout/multipleLayout.vue","webpack:///./src/components/cms/multipleLayout/index.js","webpack:///./src/components/cms/customLayout/customLayout.vue?e78c","webpack:///./src/components/cms/customLayout/customLayout.js","webpack:///src/components/cms/customLayout/customLayout.vue","webpack:///./src/components/cms/customLayout/customLayout.vue?863e","webpack:///./src/components/cms/customLayout/customLayout.vue","webpack:///./src/components/cms/customLayout/index.js","webpack:///./src/components/cms/tabLayout/tabLayout.vue?0744","webpack:///./src/components/cms/tabLayout/navItem/navItem.vue?c84e","webpack:///./src/components/cms/tabLayout/navItem/navItem.js","webpack:///src/components/cms/tabLayout/navItem/navItem.vue","webpack:///./src/components/cms/tabLayout/navItem/navItem.vue?991c","webpack:///./src/components/cms/tabLayout/navItem/navItem.vue","webpack:///./src/components/cms/tabLayout/navItem/index.js","webpack:///./src/components/cms/tabLayout/tabLayout.js","webpack:///src/components/cms/tabLayout/tabLayout.vue","webpack:///./src/components/cms/tabLayout/tabLayout.vue?9749","webpack:///./src/components/cms/tabLayout/tabLayout.vue","webpack:///./src/components/cms/tabLayout/index.js","webpack:///./src/components/cms/slideLayout/slideLayout.vue?50e4","webpack:///./src/components/cms/slideLayout/slideLayout.js","webpack:///src/components/cms/slideLayout/slideLayout.vue","webpack:///./src/components/cms/slideLayout/slideLayout.vue?2a57","webpack:///./src/components/cms/slideLayout/slideLayout.vue","webpack:///./src/components/cms/slideLayout/index.js","webpack:///./src/components/cms/cms.js","webpack:///src/components/cms/cms.vue","webpack:///./src/components/cms/cms.vue?c97e","webpack:///./src/components/cms/cms.vue","webpack:///./src/components/cms/index.js","webpack:///src/App.vue","webpack:///./src/App.vue?3f17","webpack:///./src/App.vue","webpack:///./src/main.js","webpack:///./src/App.vue?d327","webpack:///./src/components/cms/tabLayout/navItem/navItem.vue?c694","webpack:///./src/components/cms/videoPlayer/videoPlayer.vue?ecc5","webpack:///./src/components/cms/multipleLayout/multipleLayout.vue?babd","webpack:///./src/components/cms/customLayout/customLayout.vue?548a","webpack:///./src/utils/common.js","webpack:///./src/components/cms/cms.vue?8149","webpack:///./src/components/cms/textItem/textItem.vue?ef9e","webpack:///./src/components/cms/singleLayout/singleLayout.vue?3347","webpack:///./src/components/cms/buttonItem/buttonItem.vue?c05c","webpack:///./src/components/cms/tabLayout/tabLayout.vue?00e9"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","render","_vm","this","_h","$createElement","_c","_self","attrs","_g","_b","ref","cmsList","ratio","fontRatio","envUrl","on","jumpLink","$attrs","$listeners","staticRenderFns","class","mobile","_l","item","index","sort","staticClass","style","width","attributeJson","layoutStyle","widthStyle","type","height","Math","round","layOutObj","layoutType","refInFor","tag","originalId","path","scopedSlots","_u","fn","scope","_t","undefined","judgeSlot","slot","_e","staticStyle","layOutData","_v","_s","JSON","parse","stringify","displayType","component","zIndex","baseStyle","w","h","left","top","pageClick","directives","rawName","expression","sortId","animationInObj","enterClass","animationDuration","domProps","label","cmsMixin","inheritAttrs","props","default","Number","String","language","recordId","refererPagePath","brand","hoverStyle","hoverStyleShow","hoverImage","fillStyle","hoverDirection","entranceShow","entranceAnimate","fade","scale","computed","animationHoverObj","animateInType","animateSort","styleType","watch","handler","val","disposeHoverAnimate","immediate","deep","direction","methods","borderStyle","border","borderColor","borderTop","borderRight","borderBottom","borderLeft","transform","transformOrigin","bgStyle","hoverImgList","resourcePath","onDrag","x","y","$set","onResize","isLocked","getRefLineParams","params","$emit","hoverAnimate","inserted","el","binding","vnode","onmouseover","context","onmouseleave","CONTENT_TYPE","json","form","html","file","excel","xml","javascript","REQ_HEADERS","lang","contentType","checkResponse","response","status","errorCode","axios","interceptors","use","error","Promise","reject","HttpClient","url","method","headers","body","responseType","fetchUrl","catch","console","request","message","mask","external","postData","compat","assign","common","languageCode","ComService","getProductInfo","postBody","getSortProductInfo","dataSaveDecorationPageComponentEvent","dataSaveDecorationPageComponentEventFn","service","source","medium","commodity_id","popData","productCode","commodity_name","selectDataShow","commodity_sku_id","order_id","is_success","fail_reason","recommended_scenes_code","component_name","uniqueName","component_id","uniqueId","component_type","componentType","first_navigation_commodity_id","first_navigation_name","hot_zone_id","hot_zone_name","material_id","materialId","material_name","materialName","navigation_type","url_path","refer_info","second_navigation_commodity_id","second_navigation_name","first_navigation_tap_id","first_navigation_tap_name","second_navigation_tap_id","second_navigation_tap_name","navigation_tap_type","navigation_commodity_type","position","trigger_Method_Type","componentMethodType","distinctId","localStorage","getItem","parseInt","Date","getTime","floor","random","setItem","eventProperty","event","mixins","components","linkObj","jumpLinkType","err","log","reportData","isReport","$refs","display","getBoundingClientRect","textItemJs","textItem","ceil","picStyle","hasScrollBar","carousel","id","picList","resourceName","split","popList","indicatorType","opacity","picItemStyle","realWidth","realHeight","ele","proportion","$event","product","mouseover","mouseLeave","initImage","hoverIndex","imageType","productImage","pathType","prePosition","hotList","needReport","preTotal","itemCodeList","getProductList","pop","filter","map","mounted","pageNum","pageSize","then","res","list","productList","forEach","code","mainPicUrl","arr","some","hotEl","obj","hotspotJs","hotspot","swiper","imageList","positionList","positionTotal","hasInitSwiper","duration","padding","paddingSpacing","oneLineCount","itemSpacing","isSwiper","hasConfig","hasSwiperButton","initSwiper","$nextTick","preList","reduce","pre","cur","destroy","options","effect","autoplay","slidesPerView","spaceBetween","navigation","nextEl","prevEl","scrollbar","draggable","freeMode","Swiper","imgNavJs","imgNav","videoItem","videoInfo","autoPlay","isVideoHasHot","videoHotPic","hotData","checkedAttr","indexOf","imgUrl","clickVideo","Boolean","isPlay","player","play","pause","that","setTimeout","videojs","videoPlayerJs","videoPlayer","myVideoPlayer","videoHotInfo","videoHotPop","videoItemJs","hasSwiperItem","backgroundImage","paginationStyle","hoverColor","color","activeColor","isSpaceSwiper","activeIndex","slideIndex","swiperSlide","pageStyle","hasSwiperPagination","judgeSwiper","findIndex","swiperList","concat","flag","observer","observeParents","preventInteractionOnTransition","delay","interval","disableOnInteraction","stopOnLastSlide","loop","centeredSlides","slideLen","slideChangeTransitionEnd","slideNextTransitionEnd","slideTo","slidePrevTransitionEnd","Array","windowHeight","dataSend","swiperItemJs","swiperItem","flexCenterBetween","iconImage","buttonStyle","backgroundColor","stopPropagation","textMouseOver","arguments","textMouseLeave","iconStyle","borderRadius","hoverButtonStyle","fontStyle","space","fontSize","fontWeight","textDecoration","fontItalic","paddingLeft","paddingRight","right","hoverObj","buttonItemJs","buttonItem","goodsSpacing","margin","productStyle","gotoPDP","colorCode","productIndex","goodsImgType","customImage","showInfo","isHover","salesPrice","standardPrice","addProduct","categoryGroupCode","cmsSortCode","goodsPaddingSpacing","showNum","itemsPerLine","num","categoryParam","categoryCodeList","max","sortRuleId","sortField","productEntrance","document","querySelector","entrance","classList","contains","firstChild","initProduct","customImageList","initSlide","pagination","clickable","marginBottom","productItemJs","productItem","canDragInc","vLine","hLine","componentName","refs","singleComponent","singleLayoutJs","singleLayout","currentIndex","componentList","currentItem","multipleSingle","multipleLayoutJs","multipleLayout","customLayoutJs","customLayout","tabHeadInfo","showTitle","customTitle","title","tabIndex","spacing","navStyle","nativeOn","chooseTab","backStyle","marginLeft","active","activeBackImage","backImage","navItemJs","navItem","activeSort","tabHeadTitleH","hasTab","_color","marginRight","titleStyle","paddingBottom","clientHeight","setLayoutH","ind","tabSingle","tabLayoutJs","tabLayout","slideWidth","isCopy","layWidth","isInit","slideList","calculateWidth","hasCenteredSlides","allWidth","lineSlideNum","attr","hasPic","slidesPerGroup","slidesPerGroupAuto","loopedSlides","loopAdditionalSlides","slideSingle","slideLayoutJs","slideLayout","canDrag","chooseSort","1","2","3","4","5","commom","require","scroll","chooseLayout","updateSort","deleteModule","showOrHide","cmsJs","cms","terminalId","pageCode","versionAdapterType","decorationToolsVersion","componentCode","componentVersion","componentSortNum","classificationId","resourceStorageType","resourceExtensionType","resourceExtensionName","resourceActualName","resourceCoverId","resourceCoverPath","summary","size","md5Hashcode","wxAppId","wxMediaId","qnHashcode","resourceSource","shopCode","tenantCode","delFlg","createTime","createUser","updateTime","updateUser","pic","updateId","createId","originalIdStr","componentRight","entranceAnimateType","dataReportCode","titleType","buttonImage","buttonPicList","matterList","productInfoList","codeType","multilingualBrand","multilingualName","originSalesPrice","sortNum","description","multilingualDescription","putawayStatus","salesList","putawayTimeStamp","pulloffTimeStamp","inStockStatus","inventory","preSale","isGift","cmsColorVOList","itemStr","displayStatusStr","displayStatus","e","device","Vue","config","productionTip","App","$mount","addEventListener","documentElement","eles","querySelectorAll","add","layModule"],"mappings":"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","file":"js/app.453dd14c.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./hotspot.vue?vue&type=style&index=0&id=07effc48&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./hotspot.vue?vue&type=style&index=0&id=07effc48&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./productItem.vue?vue&type=style&index=0&id=d1cef142&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./productItem.vue?vue&type=style&index=0&id=d1cef142&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./slideLayout.vue?vue&type=style&index=0&id=7095e299&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./slideLayout.vue?vue&type=style&index=0&id=7095e299&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./imgNav.vue?vue&type=style&index=0&id=9a642b6e&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./imgNav.vue?vue&type=style&index=0&id=9a642b6e&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./swiperItem.vue?vue&type=style&index=0&id=08be60cc&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./swiperItem.vue?vue&type=style&index=0&id=08be60cc&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./videoItem.vue?vue&type=style&index=0&id=98a4817a&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./videoItem.vue?vue&type=style&index=0&id=98a4817a&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"app\"}},[_c('cms',_vm._g(_vm._b({ref:\"cmsRef\",attrs:{\"cmsList\":_vm.cmsList,\"canDrag\":false,\"canDragInc\":false,\"mode\":_vm.mode,\"ratio\":_vm.ratio,\"fontRatio\":_vm.fontRatio,\"envUrl\":_vm.envUrl},on:{\"jumpLink\":_vm.jumpLink}},'cms',_vm.$attrs,false),_vm.$listeners))],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:\"cms\"},[_c('div',{class:['lay-wrap', { mobile: _vm.mode == 'mobile' }]},_vm._l((_vm.cmsList),function(item,index){return _c('div',{key:item.sort,staticClass:\"lay-item\"},[_c('div',{staticClass:\"layout-set\",style:({\n width: item.attributeJson.layoutStyle && item.attributeJson.layoutStyle.widthStyle.type === 2 ? item.attributeJson.layoutStyle.widthStyle.width + '%' : '100%',\n height: item.attributeJson.layoutStyle ? Math.round(item.attributeJson.layoutStyle.height * _vm.ratio) + 'px' : 'auto'\n })},[_c(_vm.layOutObj[item.layoutType],_vm._g(_vm._b({ref:\"layModule\",refInFor:true,tag:\"component\",attrs:{\"layOutData\":item.attributeJson,\"sort\":item.attributeJson.sort,\"ratio\":_vm.ratio,\"mode\":_vm.mode,\"recordId\":item.originalId,\"envUrl\":_vm.envUrl,\"path\":_vm.path},scopedSlots:_vm._u([{key:\"customComponent\",fn:function(scope){return (item.layoutType === 3)?[_vm._t(\"customComponent\",null,{\"attributeJson\":scope.attributeJson})]:undefined}}],null,true)},'component',_vm.$attrs,false),_vm.$listeners),[(_vm.judgeSlot(index))?_c('template',{slot:\"dgCustomComponent\"},[_vm._t(\"dgCustomComponent\")],2):_vm._e()],2)],1)])}),0)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"single-layout\",style:(_vm.layoutStyle)},[_c('div',{staticStyle:{\"width\":\"100%\",\"height\":\"100%\"}},_vm._l((_vm.layOutData.componentList),function(item,index){return _c('div',{key:index},[(item.type > 100)?[_vm._v(\" \"+_vm._s(item.sort)+\" \"),_vm._t((\"dgCustomComponent\" + (item.sort)),null,{\"attributeJson\":JSON.parse(JSON.stringify(item.attributeJson))})]:_vm._e(),(item.type <= 100)?[(item.displayType == 1)?_c(item.component,_vm._g(_vm._b({key:item.sort,ref:\"singleComponent\",refInFor:true,tag:\"component\",style:({zIndex: index + 1}),attrs:{\"ratio\":_vm.ratio,\"attributeJson\":item.attributeJson,\"sortId\":item.sort}},'component',_vm.$attrs,false),_vm.$listeners)):_vm._e()]:_vm._e()],2)}),0)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"text-wrap\",style:({\n width: Math.round(_vm.attributeJson.baseStyle.w * _vm.ratio) + 'px',\n height: Math.round(_vm.attributeJson.baseStyle.h * _vm.ratio) + 'px',\n left: Math.round(_vm.attributeJson.baseStyle.l * _vm.ratio) + 'px',\n top: Math.round(_vm.attributeJson.baseStyle.t * _vm.ratio) + 'px'\n })},[(_vm.attributeJson.label)?_c('div',[_c('div',{staticClass:\"entrance-con editor-richTextWrap\",on:{\"click\":_vm.pageClick}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.entranceShow),expression:\"entranceShow\"}],ref:(\"text\" + (_vm.attributeJson.sort)),class:['text-con', (\"text-con-\" + _vm.sortId), _vm.animationInObj.type ? _vm.enterClass : ''],style:({ animationDuration: ((_vm.animationInObj.duration) + \"s\") }),domProps:{\"innerHTML\":_vm._s(_vm.attributeJson.label)}})])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import '../../assets/iconfont/iconfont.css'\r\nimport 'swiper/css/swiper.css'\r\nimport 'animate.css'\r\nimport '../../index.scss'\r\nimport 'video.js/dist/video-js.css'\r\n\r\nexport const cmsMixin = {\r\n inheritAttrs: false,\r\n props: {\r\n attributeJson: {\r\n type: Object,\r\n default: function() {}\r\n },\r\n item: {\r\n type: Object,\r\n default: () => {}\r\n },\r\n ratio: {\r\n type: Number,\r\n default: 1\r\n },\r\n envUrl: {\r\n type: String,\r\n default: ''\r\n },\r\n fontRatio: {\r\n type: Number,\r\n default: 1\r\n },\r\n mode: {\r\n type: String,\r\n default: 'pc'\r\n },\r\n language: {\r\n type: String,\r\n default: 'zh-CN'\r\n },\r\n // 组件sort\r\n sortId: {\r\n type: Number,\r\n default: 0\r\n },\r\n // 最外层布局sort\r\n sort: {\r\n type: [String, Number],\r\n default: 0\r\n },\r\n // 最外层布局recordId\r\n recordId: {\r\n type: [String, Number],\r\n default: 0\r\n },\r\n refererPagePath: {\r\n type: String\r\n },\r\n brand: {\r\n type: String\r\n },\r\n path: {\r\n type: String\r\n }\r\n },\r\n data() {\r\n return {\r\n hoverStyle: {}, // 悬停动画样式\r\n hoverStyleShow: false,\r\n hoverImage: '',\r\n fillStyle: {}, // 填充样式\r\n hoverDirection: '',\r\n entranceShow: true,\r\n enterClass: '',\r\n entranceAnimate: {\r\n fade: 'animate__animated animate__fadeIn',\r\n scale: 'animate__animated animate__zoomIn'\r\n }\r\n }\r\n },\r\n computed: {\r\n animationInObj: function() {\r\n return this.attributeJson.animationInObj\r\n },\r\n animationHoverObj: function() {\r\n return this.attributeJson.animationHoverObj\r\n },\r\n animateInType: function() {\r\n return this.attributeJson.animationInObj.type\r\n },\r\n animateSort: function() {\r\n return this.attributeJson.animationInObj.sort\r\n },\r\n baseStyle() {\r\n return this.attributeJson.baseStyle\r\n },\r\n styleType() {\r\n return this.attributeJson.styleType\r\n }\r\n },\r\n watch: {\r\n animationHoverObj: {\r\n handler(val) {\r\n this.disposeHoverAnimate(val)\r\n },\r\n immediate: true,\r\n deep: true\r\n },\r\n // 入场动画类别\r\n animateSort: {\r\n handler() {\r\n let type = this.animateInType\r\n if (type && type != 'slide') {\r\n this.entranceShow = false\r\n this.enterClass = ''\r\n this.enterClass = this.entranceAnimate[type]\r\n }\r\n\r\n if (type == 'slide' && this.animationInObj.direction) {\r\n this.entranceShow = false\r\n this.enterClass = ''\r\n this.enterClass = `animate__animated animate__${this.animationInObj.direction}`\r\n }\r\n },\r\n immediate: true\r\n },\r\n // recordId: {\r\n // handler(val) {\r\n // console.log('recordId',val);\r\n // },\r\n // immediate: true,\r\n // deep: true\r\n // }\r\n },\r\n methods: {\r\n // 处理悬停动画数据\r\n disposeHoverAnimate(val) {\r\n let hoverStyle = {}\r\n // 显示边框\r\n if (val.type === 2) {\r\n let borderStyle = val.borderStyle\r\n if (borderStyle.type == 1) {\r\n // 边框颜色相同\r\n hoverStyle = {\r\n border: borderStyle.borderColor ? `2px solid ${borderStyle.borderColor}` : 'none'\r\n }\r\n }\r\n if (borderStyle.type == 2) {\r\n let { borderTop, borderRight, borderBottom, borderLeft } = borderStyle\r\n hoverStyle = {\r\n borderTop: borderTop ? `2px solid ${borderTop}` : 'none',\r\n borderRight: borderRight ? `2px solid ${borderRight}` : 'none',\r\n borderBottom: borderBottom ? `2px solid ${borderBottom}` : 'none',\r\n borderLeft: borderLeft ? `2px solid ${borderLeft}` : 'none'\r\n }\r\n }\r\n }\r\n // 焦点放大镜\r\n if (val.type === 3) {\r\n hoverStyle = {\r\n transform: 'scale(1.2)',\r\n transformOrigin: 'center center'\r\n }\r\n }\r\n // 填充\r\n if (val.type === 4) {\r\n this.hoverDirection = val.bgStyle.direction\r\n }\r\n // 换图\r\n if (val.type === 5) {\r\n let { hoverImgList } = val\r\n this.hoverImage = hoverImgList[0] ? hoverImgList[0].resourcePath : ''\r\n }\r\n\r\n this.hoverStyle = hoverStyle\r\n },\r\n onDrag: function(x, y) {\r\n let ratio = this.ratio\r\n this.attributeJson.baseStyle.l = x / ratio\r\n this.attributeJson.baseStyle.t = y / ratio\r\n this.$set(this.attributeJson, 'baseStyle', this.attributeJson.baseStyle)\r\n },\r\n onResize: function(x, y, width, height) {\r\n let ratio = this.ratio\r\n let baseStyle = this.attributeJson.baseStyle\r\n baseStyle = {\r\n w: width / ratio,\r\n h: height / ratio,\r\n l: x / ratio,\r\n t: y / ratio,\r\n isLocked: baseStyle.isLocked\r\n }\r\n this.$set(this.attributeJson, 'baseStyle', baseStyle)\r\n },\r\n getRefLineParams(params) {\r\n this.$emit('getRefLineParams', params)\r\n }\r\n },\r\n directives: {\r\n // 入场指令\r\n // entrance: {\r\n // inserted: function(el, binding, vnode) {\r\n // if (!vnode.context.animateInType && !binding.value) return\r\n // binding.addClass = () => {\r\n // const { top } = el.getBoundingClientRect()\r\n // const h = document.documentElement.clientHeight || document.body.clientHeight\r\n // if (top < h - 50) {\r\n // vnode.context.entranceShow = true\r\n\r\n // if (binding.addClass) {\r\n // window.removeEventListener('scroll', binding.addClass)\r\n // }\r\n // }\r\n // }\r\n // window.addEventListener('scroll', binding.addClass, true)\r\n // binding.addClass()\r\n // },\r\n // unbind: function(el, binding, vnode) {\r\n // if (binding.addClass) {\r\n // window.removeEventListener('scroll', binding.addClass)\r\n // }\r\n // }\r\n // },\r\n // 悬停指令\r\n hoverAnimate: {\r\n inserted: function(el, binding, vnode) {\r\n el.onmouseover = function() {\r\n vnode.context.hoverStyleShow = true\r\n if (binding.value) {\r\n vnode.context[binding.value.key] = binding.value.value\r\n }\r\n }\r\n el.onmouseleave = function() {\r\n vnode.context.hoverStyleShow = false\r\n if (binding.value) {\r\n vnode.context[binding.value.key] = -1\r\n }\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","import axios from \"axios\";\r\nexport const CONTENT_TYPE = {\r\n json: \"application/json;\",\r\n form: \"application/x-www-form-urlencoded;\",\r\n html: \"text/html;\",\r\n file: \"multipart/form-data\",\r\n excel: \"msexcel\",\r\n xml: \"application/xml\",\r\n javascript: \"application/x-javascript;charset=utf-8\"\r\n};\r\nexport const REQ_HEADERS = {\r\n lang: \"Accept-Language\",\r\n contentType: \"Content-Type\"\r\n};\r\nfunction checkResponse(response) {\r\n if (response.status === 200) {\r\n let result = response.data;\r\n if (result.errorCode === \"0\") {\r\n return result.data;\r\n }\r\n return response.data;\r\n }\r\n}\r\naxios.interceptors.response.use(checkResponse, error => {\r\n // Do something with response error\r\n return Promise.reject(error);\r\n});\r\nexport class HttpClient {\r\n static async call(\r\n url,\r\n { method = \"get\", headers = {}, body = null, responseType = null} = {}\r\n ) {\r\n let fetchUrl = url;\r\n let params = {\r\n method: method,\r\n url: fetchUrl,\r\n responseType: responseType || \"json\",\r\n headers: headers\r\n };\r\n if (method === \"get\") {\r\n params.params = body;\r\n } else {\r\n params.data = body;\r\n }\r\n // console.log(\"params\", params);\r\n const response = await axios(params).catch(error => {\r\n if (error.response) {\r\n // The request was made and the server responded with a status code\r\n // that falls out of the range of 2xx\r\n console.error(error.response.status, error.response.data);\r\n } else if (error.request) {\r\n // The request was made but no response was received\r\n // `error.request` is an instance of XMLHttpRequest in the browser and an instance of\r\n // http.ClientRequest in node.js\r\n console.error(error.request);\r\n } else {\r\n // Something happened in finance up the request that triggered an Error\r\n console.error(\"Error\", error.message ? error.message : \"\");\r\n }\r\n // console.log(error.config)\r\n });\r\n return response;\r\n }\r\n static get(url, { mask = true, external = false, headers = {} } = {}) {\r\n return HttpClient.call(url, {\r\n headers,\r\n external,\r\n mask\r\n });\r\n }\r\n static postBody(\r\n url,\r\n {\r\n body = {},\r\n language = \"zh-CN\",\r\n module = \"\",\r\n method = \"post\",\r\n mask = true,\r\n postData = true,\r\n external = false,\r\n headers = {},\r\n compat\r\n }\r\n ) {\r\n return HttpClient.call(url, {\r\n module,\r\n method,\r\n headers: Object.assign(headers, {\r\n [REQ_HEADERS.contentType]: CONTENT_TYPE.json,\r\n common:{\r\n languageCode: language\r\n }\r\n }),\r\n body: body,\r\n postData,\r\n external,\r\n mask,\r\n compat\r\n });\r\n }\r\n}\r\n","import { HttpClient } from \"../utils/http-client\";\r\n\r\nexport class ComService {\r\n getProductInfo(url, params, language) {\r\n return HttpClient.postBody(\r\n `${url}service-zuul/manage/search/plp/standard`,\r\n {\r\n body: params,\r\n language\r\n }\r\n );\r\n }\r\n\r\n getSortProductInfo(url, params, language) {\r\n return HttpClient.postBody(`${url}service-zuul/manage/search/cms/sort`, {\r\n body: params,\r\n language\r\n });\r\n }\r\n\r\n dataSaveDecorationPageComponentEvent(url, params) {\r\n return HttpClient.postBody(`${url}service-zuul/data/collect/acquisition`, {\r\n body: params\r\n }); \r\n }\r\n}\r\n","import {ComService} from '../api/com-service'\r\n\r\n/**\r\n * cms数据采集上报\r\n */\r\nfunction dataSaveDecorationPageComponentEventFn(params, envUrl) {\r\n const service = new ComService()\r\n const data = {\r\n source: '',\r\n medium: '',\r\n commodity_id: params.popData.productCode || '', //商品item\r\n commodity_name: params.popData.selectDataShow || '', //商品名称\r\n commodity_sku_id: '',\r\n order_id: '', //订单id\r\n is_success: null, //订单是否成功\r\n fail_reason: '', //订单失败原因\r\n recommended_scenes_code: '', //商品推荐场景id\r\n component_name: params.uniqueName, // 组件名称\r\n component_id: params.uniqueId, //组件ID \r\n component_type: params.componentType, //组件类型\r\n first_navigation_commodity_id: '', //一级导航_id\r\n first_navigation_name: '', //一级导航名称\r\n hot_zone_id: params.popData.uniqueId || '', //热区_id\r\n hot_zone_name: params.popData.uniqueName || '', //热区_名称\r\n material_id: params.materialId, //素材id\r\n material_name: params.materialName, //素材名称\r\n navigation_type: '', //导航类型;1:一级导航,2:二级导航,3:三级导航\r\n url_path: params.path, //当前页面\r\n // referer: '', //http Referer\r\n refer_info: params.refererPagePath, //上级页面\r\n second_navigation_commodity_id: '', //二级导航_id\r\n second_navigation_name: '', //二级导航名称\r\n first_navigation_tap_id: '', //一级导航tab_id\r\n first_navigation_tap_name: '', //一级导航tab名称\r\n second_navigation_tap_id: '', //二级导航tab_id\r\n second_navigation_tap_name: '', //二级导航tab名称\r\n navigation_tap_type: '', //导航TapId类型;1:一级导航tap;2:二级导航tap\r\n navigation_commodity_type: '', //导航组件类型;1:一级导航组件;2:二级导航组件\r\n position: params.position, // 素材位置\r\n trigger_Method_Type: params.componentMethodType\r\n }\r\n\r\n let distinctId = ''\r\n\r\n if(localStorage.getItem(`${params.brand}Cookie`)) {\r\n distinctId = localStorage.getItem(`${params.brand}Cookie`)\r\n } else {\r\n distinctId = `${parseInt(new Date().getTime())}${Math.floor(Math.random()*10000)}`\r\n localStorage.setItem(`${params.brand}Cookie`, distinctId)\r\n }\r\n\r\n service.dataSaveDecorationPageComponentEvent(envUrl, {\r\n eventProperty: JSON.stringify({\r\n ...data\r\n }),\r\n event: params.event,\r\n distinctId,\r\n })\r\n}\r\n\r\nexport {\r\n dataSaveDecorationPageComponentEventFn\r\n}","import { cmsMixin } from \"../mixin\";\r\nimport { dataSaveDecorationPageComponentEventFn } from \"../../../utils/utils\";\r\nexport default {\r\n\tname: \"textItem\",\r\n\tmixins: [cmsMixin],\r\n\tcomponents: {},\r\n\tprops: {},\r\n\tdata() {\r\n\t\treturn {};\r\n\t},\r\n\twatch: {},\r\n\tmethods: {\r\n\t\tpageClick() {\r\n\t\t\tif (this.attributeJson.linkObj.jumpLinkType) {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tdataSaveDecorationPageComponentEventFn(\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tuniqueId: this.recordId + \"_\" + this.sortId, // 组件_id\r\n\t\t\t\t\t\t\tuniqueName: this.attributeJson.uniqueName, // 组件_名称\r\n\t\t\t\t\t\t\tcomponentType: 12,\r\n\t\t\t\t\t\t\tpopData: {},\r\n\t\t\t\t\t\t\tmaterialId: this.recordId + \"_\" + this.sortId, //素材id\r\n\t\t\t\t\t\t\tmaterialName: this.attributeJson.uniqueName, //素材名称\r\n\t\t\t\t\t\t\trefererPagePath: this.refererPagePath,\r\n\t\t\t\t\t\t\tbrand: this.brand,\r\n\t\t\t\t\t\t\tpath: this.path,\r\n\t\t\t\t\t\t\tposition: 1,\r\n\t\t\t\t\t\t\tevent: \"bannerClick\",\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tthis.envUrl\r\n\t\t\t\t\t);\r\n\t\t\t\t} catch (err) {\r\n console.log(err)\r\n }\r\n\t\t\t}\r\n this.$emit(\"jumpLink\", this.attributeJson.linkObj);\r\n\t\t},\r\n\t\t// 上报数据\r\n\t\treportData(h) {\r\n\t\t\tif (this.isReport) return;\r\n\t\t\tlet ref = this.$refs[`text${this.attributeJson.sort}`];\r\n\t\t\tif (!ref || ref.style.display == \"none\") return;\r\n\t\t\tlet el = ref.getBoundingClientRect();\r\n\t\t\tif (el.top <= h) {\r\n\t\t\t\tthis.isReport = true;\r\n\t\t\t\tdataSaveDecorationPageComponentEventFn(\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tuniqueId: this.recordId + \"_\" + this.sortId, // 组件_id\r\n\t\t\t\t\t\tuniqueName: this.attributeJson.uniqueName, // 组件_名称\r\n\t\t\t\t\t\tcomponentType: 12,\r\n\t\t\t\t\t\tpopData: {},\r\n\t\t\t\t\t\tmaterialId: this.recordId + \"_\" + this.sortId, //素材id\r\n\t\t\t\t\t\tmaterialName: this.attributeJson.uniqueName, //素材名称\r\n\t\t\t\t\t\trefererPagePath: this.refererPagePath,\r\n\t\t\t\t\t\tbrand: this.brand,\r\n\t\t\t\t\t\tpath: this.path,\r\n\t\t\t\t\t\tposition: 1,\r\n\t\t\t\t\t\tevent: \"bannerShow\",\r\n\t\t\t\t\t},\r\n\t\t\t\t\tthis.envUrl\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t},\r\n\t},\r\n};\r\n","<template>\r\n <div\r\n :style=\"{\r\n width: Math.round(attributeJson.baseStyle.w * ratio) + 'px',\r\n height: Math.round(attributeJson.baseStyle.h * ratio) + 'px',\r\n left: Math.round(attributeJson.baseStyle.l * ratio) + 'px',\r\n top: Math.round(attributeJson.baseStyle.t * ratio) + 'px'\r\n }\"\r\n class=\"text-wrap\"\r\n >\r\n <div v-if=\"attributeJson.label\">\r\n <div class=\"entrance-con editor-richTextWrap\" @click=\"pageClick\">\r\n <div :ref=\"`text${attributeJson.sort}`\" :class=\"['text-con', `text-con-${sortId}`, animationInObj.type ? enterClass : '']\" v-show=\"entranceShow\" v-html=\"attributeJson.label\" :style=\"{ animationDuration: `${animationInObj.duration}s` }\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport textItemJs from './textItem.js'\r\nexport default textItemJs\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import 'textItem';\r\n</style>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./textItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./textItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./textItem.vue?vue&type=template&id=8ebee546&scoped=true&\"\nimport script from \"./textItem.vue?vue&type=script&lang=js&\"\nexport * from \"./textItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./textItem.vue?vue&type=style&index=0&id=8ebee546&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8ebee546\",\n null\n \n)\n\nexport default component.exports","import textItem from './textItem.vue'\r\nexport default textItem","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{key:_vm.attributeJson.sort,staticClass:\"image-list\",style:({\n width: Math.ceil(_vm.attributeJson.baseStyle.w * _vm.ratio) + 'px',\n height: Math.round(_vm.attributeJson.baseStyle.h * _vm.ratio) + 'px',\n left: Math.round(_vm.attributeJson.baseStyle.l * _vm.ratio) + 'px',\n top: Math.round(_vm.attributeJson.baseStyle.t * _vm.ratio) + 'px'\n })},[(_vm.hasConfig)?_c('div',{staticClass:\"image-include\",style:({ height: Math.round(_vm.attributeJson.baseStyle.h * _vm.ratio) + 'px'})},[_c('div',{class:['entrance-con',(\"entrance-con\" + _vm.sortId)]},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.entranceShow),expression:\"entranceShow\"}],ref:(\"img\" + (_vm.attributeJson.sort)),class:['image-warp', (\"image-warp-\" + _vm.sortId), _vm.animationInObj.type ? _vm.enterClass : ''],style:({animationDuration: ((_vm.animationInObj.duration) + \"s\")})},[(_vm.isSwiper)?_c('div',{directives:[{name:\"hoverAnimate\",rawName:\"v-hoverAnimate\"}],style:([_vm.picStyle, (_vm.animationHoverObj.type === 3 && _vm.hoverStyleShow? _vm.hoverStyle : '')])},[_c('div',{class:[(\"swiper-container swiper-container-\" + _vm.sortId)]},[_c('div',{staticClass:\"swiper-wrapper\",style:({height: (((_vm.baseStyle.h - (_vm.hasScrollBar ?30 : 0)) * _vm.ratio) + \"px!important\")})},_vm._l((_vm.attributeJson.list),function(carousel,index){return _c('div',{key:carousel.id,staticClass:\"swiper-slide\",style:({width: ((_vm.baseStyle.w/4 * _vm.ratio) + \"px\")})},[_c('div',{staticClass:\"slide-con\",style:({\n height: (((_vm.baseStyle.h - (_vm.hasScrollBar ?30 : 0)) * _vm.ratio) + \"px\")})},[_c('img',{attrs:{\"src\":carousel.picList[0].resourcePath,\"alt\":carousel.picList[0].resourceName.split('.')[0]}}),(carousel.picList.length!=0 && carousel.popList.length!=0)?[_c('hotspot',_vm._g(_vm._b({ref:(\"hotspot\" + _vm.sortId + index),refInFor:true,attrs:{\"componentType\":2,\"item\":carousel,\"ratio\":_vm.ratio,\"path\":_vm.path,\"envUrl\":_vm.envUrl,\"sortId\":_vm.sortId,\"recordId\":_vm.recordId,\"laySort\":_vm.sort,\"brand\":_vm.brand,\"uniqueName\":_vm.attributeJson.uniqueName,\"language\":_vm.language}},'hotspot',_vm.$attrs,false),_vm.$listeners))]:_vm._e()],2)])}),0),(_vm.hasSwiperButton)?_c('div',{class:(\"swiper-button-prev swiper-button-prev-\" + _vm.sortId)},[_vm._t(\"swiper-button-prev\",function(){return [(_vm.indicatorType == 2 || _vm.indicatorType == 3)?_c('div',[_c('span',{staticClass:\"cms2iconfont iconleft\"})]):_vm._e()]})],2):_vm._e(),(_vm.hasSwiperButton)?_c('div',{class:(\"swiper-button-next swiper-button-next-\" + _vm.sortId)},[_vm._t(\"swiper-button-next\",function(){return [(_vm.indicatorType == 2 || _vm.indicatorType == 3)?_c('div',[_c('span',{staticClass:\"cms2iconfont iconright\"})]):_vm._e()]})],2):_vm._e(),(_vm.hasScrollBar)?_c('div',{class:(\"swiper-scrollbar swiper-scrollbar-\" + _vm.sortId)}):_vm._e()]),(_vm.animationHoverObj.type === 2)?_c('div',{staticClass:\"hover-con\",style:([_vm.hoverStyle, {opacity: (_vm.hoverStyleShow? 1 : 0)}])}):_vm._e()]):_c('div',{class:['image-warp', _vm.styleType==3 && _vm.mode!='pc'?'image-type3':''],style:([_vm.picStyle, (_vm.animationHoverObj.type === 3 && _vm.hoverStyleShow) ? _vm.hoverStyle : ''])},_vm._l((_vm.attributeJson.list),function(item,index){return _c('div',{directives:[{name:\"hoverAnimate\",rawName:\"v-hoverAnimate\"}],key:index,staticClass:\"image-item\",style:([_vm.picItemStyle])},[_c('img',{class:{'contain': _vm.styleType!=1},attrs:{\"src\":item.picList[0].resourcePath,\"alt\":item.picList[0].resourceName.split('.')[0]}}),(_vm.animationHoverObj.type === 2)?_c('div',{staticClass:\"hover-con\",style:([_vm.hoverStyle, {opacity: (_vm.hoverStyleShow? 1 : 0)}])}):_vm._e(),(_vm.animationHoverObj.type === 5 && _vm.hoverImage && _vm.hoverStyleShow)?_c('img',{staticClass:\"hover-image\",attrs:{\"src\":_vm.hoverImage,\"alt\":\"\"}}):_vm._e(),(item.picList.length!=0 && item.popList.length!=0)?_c('div',[_c('hotspot',_vm._g(_vm._b({ref:(\"hotspot\" + _vm.sortId + index),refInFor:true,attrs:{\"item\":item,\"ratio\":_vm.ratio,\"path\":_vm.path,\"brand\":_vm.brand,\"envUrl\":_vm.envUrl,\"sortId\":_vm.sortId,\"recordId\":_vm.recordId,\"componentType\":2,\"uniqueName\":_vm.attributeJson.uniqueName,\"language\":_vm.language}},'hotspot',_vm.$attrs,false),_vm.$listeners))],1):_vm._e()])}),0)])])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"pop-wrap\",style:({left: _vm.item.left, top: _vm.item.top, width: _vm.item.realWidth * _vm.ratio+'px' || '100%', height: _vm.item.realHeight * _vm.ratio+'px' || '100%'})},_vm._l((_vm.item.popList),function(ele,index){return _c('div',{key:index,ref:(\"\" + _vm.sortId + index),refInFor:true,class:\"pop-item\",style:({\n width: ((ele.width / 750 * 100) + \"%\"),\n height:((ele.height / (_vm.item.height / _vm.proportion) * 100) + \"%\"),\n left: ((ele.left / 750 * 100) + \"%\"),\n top: ((ele.top / (_vm.item.height /_vm.proportion) * 100) + \"%\")\n }),on:{\"click\":function($event){return _vm.pageClick(ele, index)}}},[(ele.product.openHot)?_c('div',{staticClass:\"product-hover\",on:{\"mouseover\":function($event){return _vm.mouseover(index)},\"mouseleave\":_vm.mouseLeave}},[(ele.product.initImage.length!=0)?_c('div',{staticStyle:{\"{fontSize\":\"0}\"}},[_c('img',{attrs:{\"src\":_vm.hoverIndex == index ?ele.product.hoverImage[0].resourcePath: ele.product.initImage[0].resourcePath,\"alt\":\"\"}})]):_vm._e(),(_vm.hoverIndex == index)?_c('div',{staticClass:\"product-image\"},[_c('img',{attrs:{\"src\":ele.product.imageType == 1 ? _vm.productImage[ele.productCode] : ele.product.productImage[0].resourcePath,\"alt\":\"\"}})]):_vm._e()]):_vm._e()])}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { ComService } from \"../../../api/com-service\";\r\nimport { dataSaveDecorationPageComponentEventFn } from '../../../utils/utils'\r\nexport default {\r\n name: 'hotspot',\r\n props: {\r\n item: {\r\n type: Object,\r\n default: () => {}\r\n },\r\n width: {\r\n type: Number,\r\n default: 0\r\n },\r\n height: {\r\n type: Number,\r\n default: 0\r\n },\r\n ratio: {\r\n type: Number,\r\n default: 1\r\n },\r\n envUrl: {\r\n type: String,\r\n default:''\r\n },\r\n // 组件sort\r\n sortId: {\r\n type: Number,\r\n default: 0\r\n },\r\n // 最外层布局recordId\r\n recordId: {\r\n type: Number,\r\n default: 0\r\n },\r\n brand: {\r\n type: String\r\n },\r\n componentType: {\r\n type: Number\r\n },\r\n refererPagePath: {\r\n type: String\r\n },\r\n path: {\r\n type: String,\r\n },\r\n pathType: {\r\n type: Number\r\n },\r\n uniqueName: {\r\n type: String\r\n },\r\n language: {\r\n type: String,\r\n default: 'zh-CN'\r\n },\r\n // 适用于轮播图的热区坑位上报,因为轮播图loop前后复制的原因,会造成复制的元素拿不到preTotal\r\n prePosition: {\r\n type: Number\r\n }\r\n },\r\n data() {\r\n return {\r\n hotList: [],\r\n proportion: 1,\r\n hoverIndex: 1,\r\n needReport: true, // 是否需要上报\r\n preTotal: 0,\r\n service: new ComService(),\r\n }\r\n },\r\n watch: {\r\n 'item.width': {\r\n handler(val) {\r\n this.proportion = val / 750\r\n },\r\n deep: true,\r\n immediate: true\r\n },\r\n itemCodeList: {\r\n handler(val) {\r\n this.getProductList(val)\r\n },\r\n immediate: true,\r\n deep: true\r\n }\r\n },\r\n computed: {\r\n itemCodeList() {\r\n let pop = this.item.popList.filter(item => {\r\n return item.jumpLinkType == 1 && item.product.imageType == 1\r\n })\r\n return pop.map(item=> {\r\n return item.productCode\r\n })\r\n }\r\n },\r\n mounted() {\r\n this.hotList = JSON.parse(JSON.stringify(this.item.popList))\r\n },\r\n methods: {\r\n // 点击热区\r\n pageClick(val,index) {\r\n if(val.jumpLinkType) {\r\n try {\r\n dataSaveDecorationPageComponentEventFn(\r\n {\r\n uniqueId: this.recordId + '_' + this.sortId, // 组件_id\r\n uniqueName: this.uniqueName, // 组件_名称\r\n componentMethodType: 1,\r\n popData: {\r\n ...val,\r\n uniqueId: this.recordId + '_' + this.sortId + '_' + val.uniqueId.split('_')[2],\r\n brand: this.pathType === 1 ? 'defaultPath' : this.brand\r\n },\r\n materialId: this.item.sort ? this.recordId + '_' + this.item.sort : this.recordId + '_' + this.sortId, //素材id\r\n materialName: this.item.uniqueName ? this.item.uniqueName : this.uniqueName, //素材名称\r\n refererPagePath: this.refererPagePath,\r\n componentType: this.componentType,\r\n path: this.path,\r\n brand: this.brand,\r\n position: this.prePosition? this.prePosition + index + 1 : this.preTotal*1 + index + 1,\r\n event: 'bannerClick'\r\n },\r\n this.envUrl\r\n )\r\n } catch(err) {\r\n console.log(err)\r\n }\r\n }\r\n this.$emit('jumpLink', val)\r\n },\r\n // 获取商品列表\r\n getProductList(itemCodeList) {\r\n if(itemCodeList.length == 0) return\r\n let params = {\r\n itemCodeList: itemCodeList,\r\n pageNum: 1,\r\n pageSize: itemCodeList.length\r\n }\r\n let productImage = {}\r\n this.service.getProductInfo(this.envUrl, params, this.language).then(res => {\r\n if (res && res.list) {\r\n this.productList = res.list;\r\n res.list.forEach(item => {\r\n productImage[item.code] = item.mainPicUrl\r\n })\r\n this.productImage = productImage\r\n }\r\n })\r\n },\r\n reportData(h, preTotal = 0) {\r\n this.preTotal = preTotal\r\n let arr = this.hotList || []\r\n if(!this.needReport) return\r\n \r\n this.needReport = arr.some(item=>{\r\n return !item.isReport\r\n })\r\n arr.forEach((ele, i) => {\r\n // 若已上报不重复上报\r\n if (!ele.isReport) {\r\n let hotEl = this.$refs[`${this.sortId}${i}`][0].getBoundingClientRect()\r\n if (hotEl.top <= h && hotEl.top >= -100) {\r\n arr[i].isReport = true\r\n let obj = arr[i]\r\n dataSaveDecorationPageComponentEventFn(\r\n {\r\n uniqueId: this.recordId + '_' + this.sortId, // 组件_id\r\n uniqueName: this.uniqueName, // 组件_名称\r\n componentMethodType: 0,\r\n popData: {\r\n ...obj,\r\n uniqueId: this.recordId + '_' + this.sortId + '_' + obj.uniqueId.split('_')[2],\r\n brand: this.pathType === 1 ? 'defaultPath' : this.brand\r\n },\r\n materialId: this.item.sort ? this.recordId + '_' +this.item.sort : this.recordId + '_' + this.sortId, //素材id\r\n materialName: this.item.uniqueName ? this.item.uniqueName : this.uniqueName, //素材名称\r\n refererPagePath: this.refererPagePath,\r\n path: this.path,\r\n componentType: this.componentType,\r\n brand: this.brand,\r\n position: preTotal + i + 1,\r\n event: 'bannerShow'\r\n },\r\n this.envUrl\r\n )\r\n }\r\n }\r\n })\r\n },\r\n mouseover(index) {\r\n this.hoverIndex = index\r\n },\r\n mouseLeave() {\r\n this.hoverIndex = -1\r\n }\r\n },\r\n}","<template>\r\n <div class=\"pop-wrap\" :style=\"{left: item.left, top: item.top, width: item.realWidth * ratio+'px' || '100%', height: item.realHeight * ratio+'px' || '100%'}\">\r\n <div \r\n :ref=\"`${sortId}${index}`\"\r\n :class=\"`pop-item`\" \r\n v-for=\"(ele,index) in item.popList\"\r\n :key=\"index\"\r\n @click=\"pageClick(ele, index)\"\r\n :style=\"{\r\n width: `${ele.width / 750 * 100 }%`,\r\n height:`${ele.height / (item.height / proportion) * 100}%`,\r\n left: `${ele.left / 750 * 100 }%`,\r\n top: `${ele.top / (item.height /proportion) * 100}%`\r\n }\">\r\n <div class=\"product-hover\" v-if=\"ele.product.openHot\" @mouseover=\"mouseover(index)\" @mouseleave=\"mouseLeave\">\r\n <div v-if=\"ele.product.initImage.length!=0\" style=\"{fontSize: 0}\">\r\n <img :src=\"hoverIndex == index ?ele.product.hoverImage[0].resourcePath: ele.product.initImage[0].resourcePath\" alt=\"\">\r\n </div>\r\n\r\n <div v-if=\"hoverIndex == index\" class=\"product-image\">\r\n <img :src=\"ele.product.imageType == 1 ? productImage[ele.productCode] : ele.product.productImage[0].resourcePath\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport hotspotJs from './hotspot.js';\r\nexport default hotspotJs;\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import 'hotspot';\r\n</style>","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./hotspot.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./hotspot.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./hotspot.vue?vue&type=template&id=07effc48&scoped=true&\"\nimport script from \"./hotspot.vue?vue&type=script&lang=js&\"\nexport * from \"./hotspot.vue?vue&type=script&lang=js&\"\nimport style0 from \"./hotspot.vue?vue&type=style&index=0&id=07effc48&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"07effc48\",\n null\n \n)\n\nexport default component.exports","import hotspot from './hotspot.vue';\r\nexport default hotspot;","import Swiper from 'swiper/js/swiper.js'\r\nimport 'swiper/css/swiper.css'\r\nimport hotspot from \"../hotspot\";\r\nimport { cmsMixin } from \"../mixin\";\r\nimport { dataSaveDecorationPageComponentEventFn } from '../../../utils/utils';\r\n\r\nexport default {\r\n name: \"imgNav\",\r\n mixins: [cmsMixin],\r\n components: {\r\n hotspot\r\n },\r\n props: {\r\n },\r\n data() {\r\n return {\r\n swiper: '',\r\n imageList:[],\r\n popList:[],\r\n positionList:[],\r\n positionTotal: [],\r\n hasInitSwiper: false\r\n }\r\n },\r\n computed: {\r\n indicatorType() {\r\n return this.attributeJson.indicatorType\r\n },\r\n // 图片组件样式\r\n picStyle() {\r\n let { attributeJson, ratio, animationInObj } = this\r\n return {\r\n animationDuration: `${animationInObj.duration}s`,\r\n padding: `0 ${attributeJson.paddingSpacing * ratio}px`,\r\n width: `${Math.ceil(attributeJson.baseStyle.w * ratio)}px`,\r\n }\r\n },\r\n // 单个图片样式\r\n picItemStyle() {\r\n let { attributeJson, ratio } = this\r\n let { oneLineCount } = attributeJson\r\n return {\r\n width: Math.ceil((attributeJson.baseStyle.w * ratio - attributeJson.paddingSpacing * 2 * ratio) / oneLineCount) + 'px',\r\n height: Math.ceil(attributeJson.baseStyle.h * ratio) + 'px',\r\n padding: '0 ' + attributeJson.itemSpacing * ratio + 'px',\r\n }\r\n },\r\n list() {\r\n return this.attributeJson.list\r\n },\r\n isSwiper() {\r\n return (this.styleType == 3 && this.indicatorType == 2 && this.mode == 'pc') || (this.styleType == 2 && this.indicatorType == 2 && this.mode == 'mobile')\r\n },\r\n // 是否配置了有效图片\r\n hasConfig() {\r\n return this.attributeJson.list.some(item => {return item.picList.length!=0})\r\n },\r\n // 是否有轮播导航\r\n hasSwiperButton() {\r\n return (this.styleType == 3 && this.indicatorType == 2 && this.mode == 'pc')\r\n },\r\n // 是否有底部scroll\r\n hasScrollBar() {\r\n return (this.styleType == 2 && this.indicatorType == 2 && this.mode == 'mobile')\r\n }\r\n },\r\n watch: {\r\n isSwiper: {\r\n handler(val) {\r\n if (val) {\r\n this.initSwiper()\r\n }\r\n },\r\n immediate: true,\r\n }\r\n },\r\n mounted() {\r\n this.$nextTick(()=>{\r\n let positionList = []\r\n let positionTotal = []\r\n this.list.forEach(item=>{\r\n if(item.popList.length != 0) {\r\n positionList.push(item.popList.length)\r\n } else {\r\n positionList.push(1)\r\n }\r\n })\r\n\r\n positionList.forEach((item, index)=>{\r\n let preList = positionList.slice(0, index)\r\n let preTotal = preList.reduce((pre, cur)=>{\r\n return pre + cur\r\n }, 0)\r\n positionTotal.push(preTotal)\r\n })\r\n this.positionList = positionList\r\n this.positionTotal = positionTotal\r\n })\r\n },\r\n methods: {\r\n // 初始化轮播图\r\n initSwiper() {\r\n if(!this.hasConfig || !this.isSwiper) return\r\n this.$nextTick(() => {\r\n if (this.swiper) {\r\n this.swiper.destroy(true, true)\r\n this.swiper = null\r\n }\r\n\r\n let { attributeJson } = this\r\n\r\n this.options = {\r\n effect: 'slide',\r\n autoplay: false,\r\n slidesPerView: this.attributeJson.oneLineCount,\r\n spaceBetween: attributeJson.itemSpacing\r\n }\r\n\r\n if(this.hasSwiperButton) {\r\n this.options.navigation = {\r\n nextEl: `.swiper-button-next-${this.sortId}`,\r\n prevEl: `.swiper-button-prev-${this.sortId}`,\r\n }\r\n }\r\n\r\n if(this.hasScrollBar) {\r\n this.options.scrollbar = {\r\n el: `.swiper-scrollbar-${this.sortId}`,\r\n draggable: true\r\n }\r\n this.options.freeMode = true\r\n }\r\n\r\n this.swiper = new Swiper(`.swiper-container-${this.sortId}`, this.options)\r\n console.log('\\x1B[32m%s\\x1B[0m', '初始化轮播图', this.swiper)\r\n })\r\n },\r\n // 上报数据\r\n reportData(h) {\r\n let ref = this.$refs[`img${this.attributeJson.sort}`]\r\n if(!ref || ref.style.display == 'none') return\r\n if(this.isSwiper && !this.hasInitSwiper && this.enterClass) {\r\n this.hasInitSwiper = true\r\n this.initSwiper()\r\n }\r\n let el = ref.getBoundingClientRect()\r\n this.list.forEach((item,i) => {\r\n if(!item.isReport) {\r\n if(item.popList.length!=0) {\r\n this.$refs[`hotspot${this.sortId}${i}`][0].reportData(h, this.positionTotal[i])\r\n return\r\n }\r\n if(el.top <= h) {\r\n item.isReport = true\r\n dataSaveDecorationPageComponentEventFn(\r\n {\r\n uniqueId: this.recordId + '_'+ this.sortId, // 组件_id\r\n uniqueName: this.attributeJson.uniqueName, // 组件_名称\r\n componentType: 2,\r\n popData: {},\r\n materialId: this.recordId+ '_'+ this.sortId + '_' + item.sort, //素材id\r\n materialName: item.uniqueName, //素材名称\r\n refererPagePath: this.refererPagePath,\r\n brand: this.brand,\r\n path: this.path,\r\n position: this.positionTotal[i] + 1,\r\n event: 'bannerShow'\r\n },\r\n this.envUrl\r\n )\r\n }\r\n }\r\n })\r\n }\r\n },\r\n};\r\n","<template>\r\n <div\r\n :style=\"{\r\n width: Math.ceil(attributeJson.baseStyle.w * ratio) + 'px',\r\n height: Math.round(attributeJson.baseStyle.h * ratio) + 'px',\r\n left: Math.round(attributeJson.baseStyle.l * ratio) + 'px',\r\n top: Math.round(attributeJson.baseStyle.t * ratio) + 'px'\r\n }\"\r\n class=\"image-list\"\r\n :key=\"attributeJson.sort\">\r\n\r\n <div v-if=\"hasConfig\" class=\"image-include\" :style=\"{ height: Math.round(attributeJson.baseStyle.h * ratio) + 'px'}\">\r\n <div :class=\"['entrance-con',`entrance-con${sortId}`]\">\r\n <div :class=\"['image-warp', `image-warp-${sortId}`, animationInObj.type ? enterClass : '']\"\r\n v-show=\"entranceShow\"\r\n :ref=\"`img${attributeJson.sort}`\"\r\n :style=\"{animationDuration: `${animationInObj.duration}s`}\">\r\n <!-- 轮播样式 -->\r\n <div v-hoverAnimate\r\n v-if=\"isSwiper\" \r\n :style=\"[picStyle, (animationHoverObj.type === 3 && hoverStyleShow? hoverStyle : '')]\"\r\n >\r\n <div :class=\"[`swiper-container swiper-container-${sortId}`]\">\r\n <div class=\"swiper-wrapper\" :style=\"{height: `${(baseStyle.h - (hasScrollBar ?30 : 0)) * ratio}px!important`}\">\r\n <div class=\"swiper-slide\" v-for=\"(carousel, index) in attributeJson.list\"\r\n :key=\"carousel.id\"\r\n :style=\"{width: `${baseStyle.w/4 * ratio}px`}\">\r\n <div class=\"slide-con\" :style=\"{\r\n height: `${(baseStyle.h - (hasScrollBar ?30 : 0)) * ratio}px`}\">\r\n <!-- 图片 -->\r\n <img :src=\"carousel.picList[0].resourcePath\" :alt=\"carousel.picList[0].resourceName.split('.')[0]\">\r\n \r\n <template v-if=\"carousel.picList.length!=0 && carousel.popList.length!=0\">\r\n <hotspot \r\n :ref=\"`hotspot${sortId}${index}`\"\r\n :componentType=\"2\"\r\n v-on=\"$listeners\" \r\n v-bind=\"$attrs\"\r\n :item=\"carousel\" \r\n :ratio=\"ratio\" \r\n :path=\"path\"\r\n :envUrl=\"envUrl\" \r\n :sortId=\"sortId\" \r\n :recordId=\"recordId\"\r\n :laySort=\"sort\"\r\n :brand=\"brand\"\r\n :uniqueName=\"attributeJson.uniqueName\"\r\n :language=\"language\"></hotspot>\r\n </template>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n <div v-if=\"hasSwiperButton\" :class=\"`swiper-button-prev swiper-button-prev-${sortId}`\">\r\n <slot name=\"swiper-button-prev\">\r\n <div v-if=\"indicatorType == 2 || indicatorType == 3\"><span class=\"cms2iconfont iconleft\"></span></div>\r\n </slot>\r\n </div>\r\n <div v-if=\"hasSwiperButton\" :class=\"`swiper-button-next swiper-button-next-${sortId}`\">\r\n <slot name=\"swiper-button-next\">\r\n <div v-if=\"indicatorType == 2 || indicatorType == 3\"><span class=\"cms2iconfont iconright\"></span></div>\r\n </slot>\r\n </div>\r\n\r\n <!-- 滑动条 -->\r\n <div v-if=\"hasScrollBar\" :class=\"`swiper-scrollbar swiper-scrollbar-${sortId}`\"></div>\r\n </div>\r\n\r\n <!-- 边框 -->\r\n <div class=\"hover-con\" v-if=\"animationHoverObj.type === 2\" :style=\"[hoverStyle, {opacity: (hoverStyleShow? 1 : 0)}]\"></div>\r\n </div>\r\n\r\n <!-- 非轮播样式 -->\r\n <div v-else :class=\"['image-warp', styleType==3 && mode!='pc'?'image-type3':'']\" :style=\"[picStyle, (animationHoverObj.type === 3 && hoverStyleShow) ? hoverStyle : '']\">\r\n <div\r\n v-hoverAnimate\r\n v-for=\"(item, index) in attributeJson.list\"\r\n :key=\"index\"\r\n :style=\"[picItemStyle]\"\r\n class=\"image-item\">\r\n \r\n <img :class=\"{'contain': styleType!=1}\" :src=\"item.picList[0].resourcePath\" :alt=\"item.picList[0].resourceName.split('.')[0]\"/>\r\n <!-- 边框 -->\r\n <div class=\"hover-con\" v-if=\"animationHoverObj.type === 2\" :style=\"[hoverStyle, {opacity: (hoverStyleShow? 1 : 0)}]\"></div>\r\n <!-- 换图 -->\r\n <img class=\"hover-image\" :src=\"hoverImage\" alt=\"\" v-if=\"animationHoverObj.type === 5 && hoverImage && hoverStyleShow\" />\r\n\r\n \r\n <div v-if=\"item.picList.length!=0 && item.popList.length!=0\">\r\n <hotspot \r\n :ref=\"`hotspot${sortId}${index}`\"\r\n v-on=\"$listeners\" \r\n v-bind=\"$attrs\"\r\n :item=\"item\" \r\n :ratio=\"ratio\" \r\n :path=\"path\"\r\n :brand=\"brand\"\r\n :envUrl=\"envUrl\" \r\n :sortId=\"sortId\" \r\n :recordId=\"recordId\"\r\n :componentType=\"2\"\r\n :uniqueName=\"attributeJson.uniqueName\"\r\n :language=\"language\"></hotspot>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport imgNavJs from \"./imgNav.js\";\r\nexport default imgNavJs;\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import \"imgNav\";\r\n@import \"../animate.scss\";\r\n</style>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./imgNav.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./imgNav.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./imgNav.vue?vue&type=template&id=9a642b6e&scoped=true&\"\nimport script from \"./imgNav.vue?vue&type=script&lang=js&\"\nexport * from \"./imgNav.vue?vue&type=script&lang=js&\"\nimport style0 from \"./imgNav.vue?vue&type=style&index=0&id=9a642b6e&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"9a642b6e\",\n null\n \n)\n\nexport default component.exports","import imgNav from './imgNav.vue'\r\nexport default imgNav","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"video-wrap\",style:({\n width: Math.round(_vm.attributeJson.baseStyle.w * _vm.ratio) + 'px',\n height: Math.round(_vm.attributeJson.baseStyle.h * _vm.ratio) + 'px',\n left: Math.round(_vm.attributeJson.baseStyle.l * _vm.ratio) + 'px',\n top: Math.round(_vm.attributeJson.baseStyle.t * _vm.ratio) + 'px'\n })},[(_vm.videoItem.length !== 0)?_c('div',[_c('div',{staticClass:\"entrance-con\"},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.entranceShow),expression:\"entranceShow\"}],ref:(\"video\" + (_vm.attributeJson.sort)),class:['video-con', (\"video-con-\" + _vm.sortId), _vm.animationInObj.type ? _vm.enterClass : ''],style:({\n width: Math.round(_vm.attributeJson.baseStyle.w * _vm.ratio) + 'px',\n height: Math.round(_vm.attributeJson.baseStyle.h * _vm.ratio) + 'px',\n animationDuration: ((_vm.animationInObj.duration) + \"s\")\n })},[_c('myVideoPlayer',{attrs:{\"sort\":new Date().getTime(),\"videoInfo\":_vm.videoInfo,\"autoPlay\":_vm.autoPlay}}),(_vm.attributeJson.isVideoHasHot === 1 && _vm.videoHotPic.length != 0)?_c('div',{staticClass:\"hot-image\"},[_c('img',{attrs:{\"src\":_vm.videoHotPic[0].resourcePath,\"alt\":\"\"}}),_c('hotspot',_vm._g(_vm._b({ref:\"hotspot\",attrs:{\"componentType\":3,\"item\":_vm.hotData,\"ratio\":_vm.ratio,\"envUrl\":_vm.envUrl,\"language\":_vm.language,\"recordId\":_vm.recordId,\"sortId\":_vm.sortId,\"path\":_vm.path,\"brand\":_vm.brand,\"uniqueName\":_vm.attributeJson.uniqueName}},'hotspot',_vm.$attrs,false),_vm.$listeners))],1):_vm._e()],1)])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticStyle:{\"height\":\"100%\",\"position\":\"relative\"}},[_c('video',{ref:(\"myVideo-\" + _vm.sort),staticClass:\"video-js vjs-default-skin vjs-big-play-centered vjs-16-9 video-item\",attrs:{\"preload\":\"auto\",\"data-setup\":\"{}\",\"x5-playsinline\":\"\",\"x5-video-orientation\":\"landscape|portrait\",\"x5-video-player-type\":\"h5\",\"webkit-playsinline\":\"true\",\"playsinline\":\"true\",\"controls\":_vm.videoInfo.checkedAttr.indexOf('controls') > -1,\"autoplay\":_vm.autoPlay,\"loop\":_vm.videoInfo.checkedAttr.indexOf('loop') > -1,\"muted\":\"\",\"poster\":_vm.videoInfo.list.length != 0 ? _vm.videoInfo.list[0].imgUrl : ''},domProps:{\"muted\":true}},[_c('source',{attrs:{\"src\":_vm.videoInfo.list.length != 0 ? _vm.videoInfo.list[0].resourcePath : ''}})]),(_vm.videoInfo.checkedAttr.indexOf('controls') < 0)?_c('div',{staticClass:\"video-cover\",on:{\"click\":_vm.clickVideo}}):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import videojs from \"video.js\"\r\nexport default {\r\n name: 'videoPlayer',\r\n props: {\r\n videoInfo: {\r\n type: Object,\r\n default: () => {}\r\n },\r\n autoPlay: {\r\n type: Boolean,\r\n default: false\r\n },\r\n sort: {\r\n type: Number,\r\n default: 0\r\n }\r\n },\r\n data() {\r\n return {\r\n isPlay: false, // 是否正在播放\r\n }\r\n },\r\n watch: {\r\n autoPlay: {\r\n handler(n) {\r\n if(this.player) {\r\n if(n) {\r\n this.player.play()\r\n } else {\r\n this.player.pause()\r\n }\r\n }\r\n },\r\n immediate: true\r\n }\r\n },\r\n mounted() {\r\n let that = this\r\n setTimeout(()=>{\r\n this.player = videojs(this.$refs[`myVideo-${this.sort}`], {}, function() {\r\n this.on(\"play\", () => {\r\n that.isPlay = true\r\n });\r\n this.on(\"pause\", () => {\r\n that.isPlay = false\r\n });\r\n })\r\n this.$nextTick(()=>{\r\n this.play()\r\n });\r\n }, 50)\r\n \r\n },\r\n methods: {\r\n play() {\r\n if(this.videoInfo.list.length!=0 && this.autoPlay) {\r\n this.player.play()\r\n }\r\n },\r\n clickVideo() {\r\n if (this.isPlay) {\r\n this.player.pause();\r\n } else {\r\n this.player.play()\r\n }\r\n }\r\n }\r\n}","<template>\r\n <div style=\"height: 100%;position: relative;\">\r\n <video\r\n :ref=\"`myVideo-${sort}`\"\r\n preload=\"auto\"\r\n data-setup=\"{}\"\r\n x5-playsinline\r\n x5-video-orientation=\"landscape|portrait\"\r\n x5-video-player-type=\"h5\"\r\n webkit-playsinline=\"true\"\r\n playsinline=\"true\"\r\n :controls=\"videoInfo.checkedAttr.indexOf('controls') > -1\"\r\n :autoplay=\"autoPlay\"\r\n :loop=\"videoInfo.checkedAttr.indexOf('loop') > -1\"\r\n muted\r\n :poster=\"videoInfo.list.length != 0 ? videoInfo.list[0].imgUrl : ''\"\r\n class=\"video-js vjs-default-skin vjs-big-play-centered vjs-16-9 video-item\"\r\n >\r\n <source\r\n :src=\"videoInfo.list.length != 0 ? videoInfo.list[0].resourcePath : ''\"\r\n />\r\n </video>\r\n <div @click=\"clickVideo\" class=\"video-cover\" v-if=\"videoInfo.checkedAttr.indexOf('controls') < 0\"></div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport videoPlayerJs from \"./videoPlayer.js\";\r\nexport default videoPlayerJs;\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import \"videoPlayer\";\r\n</style>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./videoPlayer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./videoPlayer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./videoPlayer.vue?vue&type=template&id=41993973&scoped=true&\"\nimport script from \"./videoPlayer.vue?vue&type=script&lang=js&\"\nexport * from \"./videoPlayer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./videoPlayer.vue?vue&type=style&index=0&id=41993973&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"41993973\",\n null\n \n)\n\nexport default component.exports","import videoPlayer from './videoPlayer.vue';\r\nexport default videoPlayer;","import { cmsMixin } from \"../mixin\";\r\nimport hotspot from \"../hotspot/\";\r\nimport videoPlayer from '../videoPlayer/'\r\nimport { dataSaveDecorationPageComponentEventFn } from '../../../utils/utils';\r\n\r\nexport default {\r\n name: 'videoItem',\r\n mixins: [cmsMixin],\r\n components: {\r\n hotspot,\r\n myVideoPlayer: videoPlayer\r\n },\r\n props:{\r\n attributeJson: {\r\n type: Object,\r\n default: function() {}\r\n },\r\n ratio: {\r\n type: Number,\r\n default: 1,\r\n positionList: []\r\n }\r\n },\r\n data() {\r\n return {\r\n autoPlay: false\r\n }\r\n },\r\n watch: {\r\n 'videoInfo.checkedAttr': {\r\n handler(val) {\r\n this.autoPlay = val.indexOf('autoPlay') > -1\r\n },\r\n immediate: true,\r\n deep: true\r\n },\r\n },\r\n computed: {\r\n videoItem() {\r\n return this.attributeJson.videoInfo.list\r\n },\r\n videoHotPic() {\r\n return this.attributeJson.videoHotInfo.picList\r\n },\r\n videoHotPop() {\r\n return this.attributeJson.videoHotInfo.popList\r\n },\r\n videoInfo() {\r\n return this.attributeJson.videoInfo\r\n },\r\n hotData() {\r\n let {attributeJson} = this\r\n return {\r\n popList: attributeJson.videoHotInfo.popList, \r\n width: attributeJson.videoHotInfo.picList[0].width,\r\n height: attributeJson.videoHotInfo.picList[0].height,\r\n realWidth: attributeJson.baseStyle.w,\r\n realHeight: attributeJson.baseStyle.h,\r\n top: 0,\r\n left: 0\r\n }\r\n }\r\n },\r\n methods: {\r\n // 上报数据\r\n reportData(h) {\r\n if(this.attributeJson.isVideoHasHot == 1) {\r\n this.$refs.hotspot&&this.$refs.hotspot.reportData(h, 0)\r\n return\r\n }\r\n if(this.isReport) return\r\n let ref = this.$refs[`video${this.attributeJson.sort}`]\r\n if( !ref || ref.style.display == 'none') return\r\n let el = ref.getBoundingClientRect()\r\n if(el.top <= h) {\r\n this.isReport = true\r\n dataSaveDecorationPageComponentEventFn(\r\n {\r\n uniqueId: this.recordId + '_' + this.sortId, // 组件_id\r\n uniqueName: this.attributeJson.uniqueName, // 组件_名称\r\n componentType: 3,\r\n popData: {},\r\n materialId: this.recordId + '_' + this.sortId, //素材id\r\n materialName: this.attributeJson.uniqueName, //素材名称\r\n refererPagePath: this.refererPagePath,\r\n brand: this.brand,\r\n path: this.path,\r\n event: 'bannerShow',\r\n position: 1\r\n },\r\n this.envUrl\r\n )\r\n }\r\n }\r\n }\r\n}","<template>\r\n <div\r\n :style=\"{\r\n width: Math.round(attributeJson.baseStyle.w * ratio) + 'px',\r\n height: Math.round(attributeJson.baseStyle.h * ratio) + 'px',\r\n left: Math.round(attributeJson.baseStyle.l * ratio) + 'px',\r\n top: Math.round(attributeJson.baseStyle.t * ratio) + 'px'\r\n }\"\r\n class=\"video-wrap\"\r\n >\r\n\r\n <div v-if=\"videoItem.length !== 0\">\r\n <div class=\"entrance-con\">\r\n <div\r\n :class=\"['video-con', `video-con-${sortId}`, animationInObj.type ? enterClass : '']\"\r\n :ref=\"`video${attributeJson.sort}`\"\r\n v-show=\"entranceShow\"\r\n :style=\"{\r\n width: Math.round(attributeJson.baseStyle.w * ratio) + 'px',\r\n height: Math.round(attributeJson.baseStyle.h * ratio) + 'px',\r\n animationDuration: `${animationInObj.duration}s`\r\n }\">\r\n\r\n <myVideoPlayer :sort=\"new Date().getTime()\" :videoInfo=\"videoInfo\" :autoPlay=\"autoPlay\"></myVideoPlayer>\r\n <!-- 热区图片 -->\r\n <div class=\"hot-image\" v-if=\"attributeJson.isVideoHasHot === 1 && videoHotPic.length != 0\">\r\n <img :src=\"videoHotPic[0].resourcePath\" alt=\"\" />\r\n <hotspot \r\n ref=\"hotspot\" \r\n v-bind=\"$attrs\"\r\n v-on=\"$listeners\" \r\n :componentType=\"3\"\r\n :item=\"hotData\" \r\n :ratio=\"ratio\" \r\n :envUrl=\"envUrl\" \r\n :language=\"language\"\r\n :recordId=\"recordId\"\r\n :sortId=\"sortId\"\r\n :path=\"path\"\r\n :brand=\"brand\"\r\n :uniqueName=\"attributeJson.uniqueName\"></hotspot>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport videoItemJs from \"./videoItem.js\";\r\nexport default videoItemJs;\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import \"videoItem\";\r\n</style>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./videoItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./videoItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./videoItem.vue?vue&type=template&id=98a4817a&scoped=true&\"\nimport script from \"./videoItem.vue?vue&type=script&lang=js&\"\nexport * from \"./videoItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./videoItem.vue?vue&type=style&index=0&id=98a4817a&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"98a4817a\",\n null\n \n)\n\nexport default component.exports","import videoItem from './videoItem.vue';\r\nexport default videoItem;","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"swiper-wrap\",style:({\n width: Math.round(_vm.attributeJson.baseStyle.w * _vm.ratio) + 'px',\n height: Math.round(_vm.attributeJson.baseStyle.h * _vm.ratio) + 'px',\n left: Math.round(_vm.attributeJson.baseStyle.l * _vm.ratio) + 'px',\n top: Math.round(_vm.attributeJson.baseStyle.t * _vm.ratio) + 'px'\n })},[( _vm.hasSwiperItem || (_vm.bgStyle.status === 1 && _vm.bgStyle.picList.length != 0))?_c('div',{directives:[{name:\"hoverAnimate\",rawName:\"v-hoverAnimate\"}],class:['swiper-con', (\"swiper-con-\" + _vm.mode)],style:({backgroundImage: _vm.bgStyle.picList.length != 0 ?(\"url(\" + (_vm.bgStyle.picList[0].resourcePath) + \")\") : ''})},[_c('div',{staticClass:\"entrance-con\",style:({'--hoverColor': _vm.paginationStyle.hoverColor || _vm.paginationStyle.color, '--activeColor': _vm.paginationStyle.activeColor, '--color': _vm.paginationStyle.color, width: ((_vm.baseStyle.w* _vm.ratio) + \"px\"), height: ((_vm.baseStyle.h * _vm.ratio) + \"px\")})},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.entranceShow),expression:\"entranceShow\"}],key:_vm.indicatorType,ref:(\"swiper\" + (_vm.attributeJson.sort)),class:[(\"swiper-container swiper-container-\" + _vm.sortId + \" swiper-container-\" + _vm.indicatorType), _vm.animationInObj.type ? _vm.enterClass : ''],style:({ animationDuration: ((_vm.animationInObj.duration) + \"s\") }),attrs:{\"id\":(\"mySwiper-\" + _vm.sortId)}},[_c('div',{staticClass:\"swiper-wrapper\"},_vm._l((_vm.swiperList),function(carousel,index){return _c('div',{key:carousel.sort+index,class:['swiper-slide', {'slide-auto': _vm.isSpaceSwiper}]},[_c('div',{style:({width: (((_vm.baseStyle.w - (_vm.styleType == 2 ? 100 : 0)) * _vm.ratio) + \"px!important\"), height: ((_vm.baseStyle.h * _vm.ratio) + \"px\")})},[(carousel.type === 1)?_c('img',{attrs:{\"src\":carousel.picList[0].resourcePath,\"alt\":carousel.picList[0].resourceName.split('.')[0]}}):_vm._e(),(carousel.type === 2)?_c('div',{staticClass:\"video-player-con\"},[_c('myVideoPlayer',{attrs:{\"sort\":new Date().getTime(),\"videoInfo\":carousel.videoInfo,\"autoPlay\":carousel.videoInfo.checkedAttr.indexOf('autoPlay') > -1 && _vm.activeIndex == index}}),(carousel.type == 2 && carousel.isVideoHasHot == 1 && carousel.videoHotInfo.picList.length!=0)?_c('div',{staticClass:\"video-hot-image\"},[_c('img',{attrs:{\"src\":carousel.videoHotInfo.picList[0].resourcePath,\"alt\":carousel.videoHotInfo.picList[0].resourceName.split('.')[0]}}),(carousel.videoHotInfo.picList.length!=0)?_c('div',{staticClass:\"swiper-hot\"},[_c('hotspot',_vm._g(_vm._b({ref:(\"hotspot\" + _vm.sortId + index),refInFor:true,attrs:{\"item\":{realWidth: carousel.realWidth, realHeight: carousel.realHeight, popList: carousel.videoHotInfo.popList, width: carousel.videoHotInfo.picList[0].width, height: carousel.videoHotInfo.picList[0].height},\"componentType\":1,\"ratio\":_vm.ratio,\"uniqueName\":_vm.attributeJson.uniqueName,\"envUrl\":_vm.envUrl,\"sortId\":_vm.sortId,\"laySort\":_vm.sort,\"path\":_vm.path,\"brand\":_vm.brand,\"prePosition\":_vm.positionTotal[carousel.i],\"recordId\":_vm.recordId}},'hotspot',_vm.$attrs,false),_vm.$listeners))],1):_vm._e()]):_vm._e()],1):_vm._e(),(carousel.type == 1 && carousel.picList.length!=0)?[_c('hotspot',_vm._g(_vm._b({ref:(\"hotspot\" + _vm.sortId + index),refInFor:true,attrs:{\"item\":carousel,\"ratio\":_vm.ratio,\"componentType\":1,\"uniqueName\":_vm.attributeJson.uniqueName,\"path\":_vm.path,\"envUrl\":_vm.envUrl,\"sortId\":_vm.sortId,\"brand\":_vm.brand,\"prePosition\":_vm.positionTotal[carousel.i],\"recordId\":_vm.recordId}},'hotspot',_vm.$attrs,false),_vm.$listeners))]:_vm._e()],2)])}),0),(_vm.hasScrollBar)?_c('div',{staticClass:\"swiper-scrollbar-own\"},[_c('div',{staticClass:\"swiper-scrollbar-drag\",style:({width: ((100 / _vm.list.length) + \"%\"), left: (((_vm.activeIndex > _vm.list.length) ? 0 : (100 / _vm.list.length * (_vm.activeIndex - 1))) + \"%\")})})]):_vm._e(),(_vm.hasSwiperPagination)?_c('div',{staticClass:\"swiper-pagination-custom\"},_vm._l((_vm.list),function(item,index){return _c('span',{key:index,class:['pagination-custom-bullt', {'bullt-active': _vm.slideIndex == index}],on:{\"click\":function($event){return _vm.swiperSlide(index)}}})}),0):_vm._e(),(_vm.hasSwiperButton)?[_c('div',{class:['swiper-button-prev', (\"swiper-button-prev-\" + _vm.sortId)]},[_vm._t(\"swiper-button-prev\",function(){return [(_vm.indicatorType == 2 || _vm.indicatorType == 3)?_c('div',[_c('span',{staticClass:\"cms2iconfont iconleft\",style:(_vm.pageStyle)})]):_vm._e(),(_vm.indicatorType == 4)?_c('div',{staticClass:\"arrow\"},[_c('span',{staticClass:\"cms2iconfont iconarrow-left\",style:(_vm.pageStyle)})]):_vm._e()]})],2),_c('div',{class:['swiper-button-next', (\"swiper-button-next-\" + _vm.sortId)]},[_vm._t(\"swiper-button-next\",function(){return [(_vm.indicatorType == 2 || _vm.indicatorType == 3)?_c('div',[_c('span',{staticClass:\"cms2iconfont iconright\",style:(_vm.pageStyle)})]):_vm._e(),(_vm.indicatorType == 4)?_c('div',{staticClass:\"arrow\"},[_c('span',{staticClass:\"cms2iconfont iconarrow-right\",style:(_vm.pageStyle)})]):_vm._e()]})],2)]:_vm._e()],2)]),(_vm.animationHoverObj.type === 2)?_c('div',{staticClass:\"hover-con\",style:([_vm.hoverStyle, {opacity: (_vm.hoverStyleShow? 1 : 0)}])}):_vm._e()]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Swiper from 'swiper/js/swiper.js'\r\nimport 'swiper/css/swiper.css'\r\nimport hotspot from '../hotspot/'\r\nimport { cmsMixin } from '../mixin'\r\nimport videoPlayer from '../videoPlayer/'\r\nimport { dataSaveDecorationPageComponentEventFn } from '../../../utils/utils'\r\n\r\nexport default {\r\n name: 'swiperItem',\r\n mixins: [cmsMixin],\r\n components: {\r\n hotspot,\r\n myVideoPlayer: videoPlayer\r\n },\r\n props: {\r\n sortId: {\r\n type: Number\r\n }\r\n },\r\n data() {\r\n return {\r\n hasSwiperItem: false,\r\n swiper: '',\r\n activeIndex: 0, \r\n slideIndex: 0,\r\n hasInitSwiper: false,\r\n positionList: [],\r\n positionTotal: [], // 当前组件之前的坑位和\r\n }\r\n },\r\n computed: {\r\n bgStyle() {\r\n return this.attributeJson.bgStyle\r\n },\r\n list() {\r\n return this.attributeJson.list\r\n },\r\n styleType() {\r\n return this.attributeJson.styleType\r\n },\r\n indicatorType() {\r\n return this.attributeJson.indicatorType\r\n },\r\n // 分页器颜色\r\n paginationStyle() {\r\n return this.attributeJson.paginationStyle\r\n },\r\n pageStyle() {\r\n return {\r\n color: this.attributeJson.paginationStyle.color\r\n }\r\n },\r\n hasSwiperPagination() {\r\n return this.indicatorType == 3\r\n },\r\n // 是否有导航指示器\r\n hasSwiperButton() {\r\n return this.indicatorType !=1\r\n },\r\n // 是否有导航条\r\n hasScrollBar() {\r\n return this.mode == 'pc' && this.indicatorType == 2\r\n },\r\n // 是否为两边露出的样式\r\n isSpaceSwiper() {\r\n return this.mode == 'mobile' && this.styleType == 2\r\n }\r\n },\r\n mounted() {\r\n this.$nextTick(()=>{\r\n let positionList = []\r\n let positionTotal = []\r\n this.list.forEach(item=>{\r\n if((item.type == 1 && item.popList.length!=0)||(item.videoHotInfo.popList.length!=0)) {\r\n positionList.push(item.type == 1?item.popList.length:item.videoHotInfo.popList.length)\r\n } else {\r\n positionList.push(1)\r\n }\r\n })\r\n\r\n positionList.forEach((item, index)=>{\r\n let preList = positionList.slice(0, index)\r\n let preTotal = preList.reduce((pre, cur)=>{\r\n return pre + cur\r\n }, 0)\r\n positionTotal.push(preTotal)\r\n })\r\n\r\n this.positionList = positionList\r\n this.positionTotal = positionTotal\r\n this.judgeSwiper()\r\n })\r\n },\r\n methods: {\r\n judgeSwiper() {\r\n let list = this.attributeJson.list\r\n let index = list.findIndex(item => {\r\n return item.picList.length != 0 || item.videoInfo.list.length != 0\r\n })\r\n this.hasSwiperItem = index > -1\r\n if (this.hasSwiperItem) {\r\n list.forEach((item, index)=>{\r\n item.i = index\r\n })\r\n let item = JSON.parse(JSON.stringify(list))\r\n this.swiperList = list.concat(JSON.parse(JSON.stringify(item)))\r\n this.swiperList = item.concat(this.swiperList)\r\n // 初始化轮播\r\n this.initSwiper(true)\r\n }\r\n },\r\n initSwiper: function(flag) {\r\n if (this.hasSwiperItem || (this.bgStyle.status === 1 && this.bgStyle.picList.length != 0)) {\r\n this.$nextTick(() => {\r\n if (this.swiper) {\r\n this.swiper.destroy(true, true)\r\n this.swiper = null\r\n }\r\n let { attributeJson } = this\r\n this.options = {\r\n effect: 'slide',\r\n // loop: true,\r\n observer: true,\r\n observeParents: true,\r\n preventInteractionOnTransition: true,\r\n autoplay: attributeJson.autoPlay\r\n ? {\r\n delay: attributeJson.interval * 1000,\r\n disableOnInteraction: true,\r\n stopOnLastSlide: false\r\n }\r\n : false\r\n }\r\n if(this.mode == 'mobile' && this.styleType == 2) {\r\n this.options.spaceBetween = 10\r\n this.options.loop = false\r\n this.options.slidesPerView = 'auto'\r\n this.options.centeredSlides = true\r\n }\r\n \r\n // 导航按钮定义\r\n if (this.hasSwiperButton) {\r\n this.options.navigation = {\r\n nextEl: `.swiper-button-next-${this.sortId}`,\r\n prevEl: `.swiper-button-prev-${this.sortId}`\r\n }\r\n }\r\n\r\n let that = this\r\n let slideLen = this.list.length\r\n this.options.on = {\r\n slideChangeTransitionEnd: function(){\r\n //切换结束时,告诉我现在是第几个slide\r\n that.activeIndex = this.activeIndex\r\n that.slideIndex = that.swiperList[this.activeIndex].i\r\n \r\n },\r\n slideNextTransitionEnd: function () {\r\n if(this.activeIndex == slideLen *2 ) {\r\n this.slideTo(slideLen, 0)\r\n }\r\n },\r\n slidePrevTransitionEnd: function() {\r\n if(this.activeIndex == slideLen - 1 ) {\r\n this.slideTo(slideLen *2 - 1, 0)\r\n }\r\n }\r\n }\r\n this.swiper = new Swiper(`.swiper-container-${this.sortId}`, this.options)\r\n if(this.swiper instanceof Array) {\r\n this.swiper.forEach(item=>{\r\n item.slideTo(slideLen, 0)\r\n })\r\n } else {\r\n this.swiper.slideTo(slideLen, 0)\r\n }\r\n if(flag) {\r\n this.reportData(this.windowHeight)\r\n }\r\n })\r\n }\r\n },\r\n swiperSlide(i) {\r\n this.swiper.slideTo(i)\r\n this.slideIndex = i\r\n },\r\n // 上报数据\r\n reportData(h) {\r\n this.windowHeight = h\r\n let ref = this.$refs[`swiper${this.attributeJson.sort}`]\r\n if(!ref || ref.style.display == 'none') return\r\n if(!this.hasInitSwiper && this.enterClass) {\r\n this.hasInitSwiper = true\r\n this.initSwiper()\r\n }\r\n let el = ref.getBoundingClientRect()\r\n if(el.top <= h) {\r\n this.list.forEach((item, i) => {\r\n if(item.isReport) return\r\n if ((item.type == 1 && item.popList.length!=0)||(item.videoHotInfo.popList.length!=0)) {\r\n this.$refs[`hotspot${this.sortId}${i}`][0].reportData(h, this.positionTotal[i])\r\n return\r\n }\r\n item.isReport = true\r\n this.dataSend(item, this.positionTotal[i])\r\n })\r\n }\r\n },\r\n dataSend(item, preTotal) {\r\n dataSaveDecorationPageComponentEventFn(\r\n {\r\n uniqueId: this.recordId + '_' + this.sortId, // 组件_id\r\n uniqueName: this.attributeJson.uniqueName, // 组件_名称\r\n componentType: 1,\r\n popData: {},\r\n materialId: this.recordId+ '_' + this.sortId + '_' + item.sort, //素材id\r\n materialName: item.uniqueName, //素材名称\r\n refererPagePath: this.refererPagePath,\r\n brand: this.brand,\r\n path: this.path,\r\n position: preTotal + 1,\r\n event: 'bannerShow'\r\n },\r\n this.envUrl\r\n )\r\n }\r\n }\r\n}\r\n","<template>\r\n <div\r\n :style=\"{\r\n width: Math.round(attributeJson.baseStyle.w * ratio) + 'px',\r\n height: Math.round(attributeJson.baseStyle.h * ratio) + 'px',\r\n left: Math.round(attributeJson.baseStyle.l * ratio) + 'px',\r\n top: Math.round(attributeJson.baseStyle.t * ratio) + 'px'\r\n }\"\r\n class=\"swiper-wrap\"\r\n >\r\n\r\n <div\r\n v-if=\" hasSwiperItem || (bgStyle.status === 1 && bgStyle.picList.length != 0)\"\r\n :style=\"{backgroundImage: bgStyle.picList.length != 0 ?`url(${bgStyle.picList[0].resourcePath})` : ''}\"\r\n :class=\"['swiper-con', `swiper-con-${mode}`]\"\r\n v-hoverAnimate\r\n >\r\n <div \r\n class=\"entrance-con\" \r\n :style=\"{'--hoverColor': paginationStyle.hoverColor || paginationStyle.color, '--activeColor': paginationStyle.activeColor, '--color': paginationStyle.color, width: `${baseStyle.w* ratio}px`, height: `${baseStyle.h * ratio}px`}\">\r\n <div\r\n :ref=\"`swiper${attributeJson.sort}`\"\r\n :class=\"[`swiper-container swiper-container-${sortId} swiper-container-${indicatorType}`, animationInObj.type ? enterClass : '']\"\r\n :style=\"{ animationDuration: `${animationInObj.duration}s` }\"\r\n :id=\"`mySwiper-${sortId}`\" \r\n :key=\"indicatorType\"\r\n v-show=\"entranceShow\">\r\n <div class=\"swiper-wrapper\">\r\n <div :class=\"['swiper-slide', {'slide-auto': isSpaceSwiper}]\" v-for=\"(carousel, index) in swiperList\" :key=\"carousel.sort+index\">\r\n <div :style=\"{width: `${(baseStyle.w - (styleType == 2 ? 100 : 0)) * ratio}px!important`, height: `${baseStyle.h * ratio}px`}\">\r\n <!-- 图片 -->\r\n <img v-if=\"carousel.type === 1\" :src=\"carousel.picList[0].resourcePath\" :alt=\"carousel.picList[0].resourceName.split('.')[0]\">\r\n <!-- 视频 -->\r\n <div class=\"video-player-con\" v-if=\"carousel.type === 2\">\r\n <myVideoPlayer :sort=\"new Date().getTime()\" :videoInfo=\"carousel.videoInfo\" :autoPlay=\"carousel.videoInfo.checkedAttr.indexOf('autoPlay') > -1 && activeIndex == index\"></myVideoPlayer>\r\n\r\n <!-- 视频热区图片 -->\r\n <div class=\"video-hot-image\" v-if=\"carousel.type == 2 && carousel.isVideoHasHot == 1 && carousel.videoHotInfo.picList.length!=0\">\r\n <img :src=\"carousel.videoHotInfo.picList[0].resourcePath\" :alt=\"carousel.videoHotInfo.picList[0].resourceName.split('.')[0]\">\r\n <div class=\"swiper-hot\" v-if=\"carousel.videoHotInfo.picList.length!=0\">\r\n <hotspot \r\n :ref=\"`hotspot${sortId}${index}`\"\r\n v-on=\"$listeners\"\r\n v-bind=\"$attrs\"\r\n :item=\"{realWidth: carousel.realWidth, realHeight: carousel.realHeight, popList: carousel.videoHotInfo.popList, width: carousel.videoHotInfo.picList[0].width, height: carousel.videoHotInfo.picList[0].height}\"\r\n :componentType=\"1\"\r\n :ratio=\"ratio\" \r\n :uniqueName=\"attributeJson.uniqueName\" \r\n :envUrl=\"envUrl\" \r\n :sortId=\"sortId\"\r\n :laySort=\"sort\"\r\n :path=\"path\"\r\n :brand=\"brand\"\r\n :prePosition=\"positionTotal[carousel.i]\"\r\n :recordId=\"recordId\"></hotspot>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <template v-if=\"carousel.type == 1 && carousel.picList.length!=0\">\r\n <hotspot \r\n :ref=\"`hotspot${sortId}${index}`\"\r\n v-on=\"$listeners\" \r\n v-bind=\"$attrs\" \r\n :item=\"carousel\" \r\n :ratio=\"ratio\" \r\n :componentType=\"1\"\r\n :uniqueName=\"attributeJson.uniqueName\"\r\n :path=\"path\"\r\n :envUrl=\"envUrl\" \r\n :sortId=\"sortId\"\r\n :brand=\"brand\"\r\n :prePosition=\"positionTotal[carousel.i]\"\r\n :recordId=\"recordId\"></hotspot>\r\n </template>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n\r\n <!-- 滑动条 -->\r\n <div v-if=\"hasScrollBar\" class=\"swiper-scrollbar-own\">\r\n <div class=\"swiper-scrollbar-drag\" :style=\"{width: `${100 / list.length}%`, left: `${(activeIndex > list.length) ? 0 : (100 / list.length * (activeIndex - 1))}%`}\"></div>\r\n </div>\r\n\r\n <!-- 如果需要分页器 -->\r\n <div v-if=\"hasSwiperPagination\" class=\"swiper-pagination-custom\">\r\n <span v-for=\"(item,index) in list\" @click=\"swiperSlide(index)\" :key=\"index\" :class=\"['pagination-custom-bullt', {'bullt-active': slideIndex == index}]\"></span>\r\n </div>\r\n\r\n <!-- 如果需要导航按钮 -->\r\n <template v-if=\"hasSwiperButton\">\r\n <div :class=\"['swiper-button-prev', `swiper-button-prev-${sortId}`]\" >\r\n <slot name=\"swiper-button-prev\">\r\n <div v-if=\"indicatorType == 2 || indicatorType == 3\"><span :style=\"pageStyle\" class=\"cms2iconfont iconleft\"></span></div>\r\n <div class=\"arrow\" v-if=\"indicatorType == 4\"><span :style=\"pageStyle\" class=\"cms2iconfont iconarrow-left\"></span></div>\r\n </slot>\r\n </div>\r\n <div :class=\"['swiper-button-next', `swiper-button-next-${sortId}`]\">\r\n <slot name=\"swiper-button-next\">\r\n <div v-if=\"indicatorType == 2 || indicatorType == 3\"><span :style=\"pageStyle\" class=\"cms2iconfont iconright\"></span></div>\r\n <div class=\"arrow\" v-if=\"indicatorType == 4\"><span :style=\"pageStyle\" class=\"cms2iconfont iconarrow-right\"></span></div>\r\n </slot>\r\n </div>\r\n </template>\r\n </div>\r\n </div>\r\n\r\n <!-- 边框 -->\r\n <div class=\"hover-con\" v-if=\"animationHoverObj.type === 2\" :style=\"[hoverStyle, {opacity: (hoverStyleShow? 1 : 0)}]\"></div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport swiperItemJs from \"./swiperItem.js\";\r\nexport default swiperItemJs;\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import \"swiperItem\";\r\n@import \"../animate.scss\";\r\n</style>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./swiperItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./swiperItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./swiperItem.vue?vue&type=template&id=08be60cc&scoped=true&\"\nimport script from \"./swiperItem.vue?vue&type=script&lang=js&\"\nexport * from \"./swiperItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./swiperItem.vue?vue&type=style&index=0&id=08be60cc&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"08be60cc\",\n null\n \n)\n\nexport default component.exports","import swiperItem from './swiperItem.vue'\r\nexport default swiperItem","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"button-wrap\",style:({\n width: Math.round(_vm.attributeJson.baseStyle.w * _vm.ratio) + 'px',\n height: Math.round(_vm.attributeJson.baseStyle.h * _vm.ratio) + 'px',\n left: Math.round(_vm.attributeJson.baseStyle.l * _vm.ratio) + 'px',\n top: Math.round(_vm.attributeJson.baseStyle.t * _vm.ratio) + 'px'\n })},[_c('div',{staticClass:\"entrance-con\"},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.entranceShow),expression:\"entranceShow\"}],ref:(\"button\" + (_vm.attributeJson.sort)),class:['button-cl', (\"button-cl-\" + _vm.sortId), _vm.animationInObj.type ? _vm.enterClass : ''],style:({ animationDuration: ((_vm.animationInObj.duration) + \"s\") }),on:{\"click\":_vm.pageClick}},[_c('div',{directives:[{name:\"hoverAnimate\",rawName:\"v-hoverAnimate\"}],staticClass:\"button-content\",class:[{ flexCenterBetween: _vm.iconImage }, _vm.animationHoverObj.type === 4 ? _vm.hoverDirection : ''],style:([_vm.buttonStyle, { '--width': _vm.hoverStyleShow ? '100%' : '0', '--height': _vm.hoverStyleShow ? '100%' : '0', '--bgColor': _vm.animationHoverObj.bgStyle.backgroundColor }]),on:{\"mouseover\":function($event){$event.stopPropagation();return _vm.textMouseOver.apply(null, arguments)},\"mouseleave\":_vm.textMouseLeave}},[(_vm.iconStyle.type === 1 && _vm.iconStyle.position === 1 && _vm.iconImage)?_c('img',{attrs:{\"src\":_vm.iconImage,\"alt\":\"\"}}):_vm._e(),_c('div',{staticClass:\"label\",style:(_vm.hoverButtonStyle)},[_vm._v(_vm._s(_vm.attributeJson.label || '按钮'))]),(_vm.iconStyle.type === 1 && _vm.iconStyle.position === 2 && _vm.iconImage)?_c('img',{attrs:{\"src\":_vm.iconImage,\"alt\":\"\"}}):_vm._e(),(_vm.animationHoverObj.type === 5 && _vm.hoverImage && _vm.hoverStyleShow)?_c('img',{staticClass:\"hover-image\",attrs:{\"src\":_vm.hoverImage,\"alt\":\"\"}}):_vm._e()]),(_vm.animationHoverObj.type === 2)?_c('div',{staticClass:\"hover-con\",style:([_vm.hoverStyle, { opacity: _vm.hoverStyleShow ? 1 : 0, borderRadius: _vm.attributeJson.borderStyle.borderRadius + 'px' }])}):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { cmsMixin } from \"../mixin\";\r\nimport { dataSaveDecorationPageComponentEventFn } from '../../../utils/utils';\r\nexport default {\r\n name:\"buttonItem\",\r\n mixins: [cmsMixin],\r\n components:{\r\n },\r\n props: {\r\n },\r\n data() {\r\n return {\r\n iconImage: '', // 按钮图标\r\n backgroundImage: '', // 按钮背景图\r\n hoverButtonStyle: {}, //悬停样式\r\n }\r\n },\r\n watch: {\r\n bgStyle: {\r\n handler(n) {\r\n if(n.picList.length != 0) {\r\n this.backgroundImage = n.type === 2 ? n.picList[0].resourcePath : ''\r\n }\r\n },\r\n immediate: true,\r\n deep: true\r\n },\r\n iconStyle: {\r\n handler(n) {\r\n if(n.picList.length != 0) {\r\n this.iconImage = n.type===1 ? n.picList[0].resourcePath : ''\r\n }\r\n },\r\n immediate: true,\r\n deep: true\r\n }\r\n },\r\n computed: {\r\n iconStyle() {\r\n return this.attributeJson.iconStyle\r\n },\r\n bgStyle() {\r\n return this.attributeJson.bgStyle\r\n },\r\n // 按钮样式\r\n buttonStyle() {\r\n let {bgStyle, fontStyle, borderStyle, space} = this.attributeJson\r\n let {borderTop, borderRight, borderBottom, borderLeft , borderColor } = borderStyle\r\n let style = {\r\n fontSize: fontStyle.fontSize,\r\n color: fontStyle.color,\r\n backgroundColor: bgStyle.type === 1 ? bgStyle.backgroundColor : '',\r\n fontWeight: fontStyle.fontWeight ? 'bold' : '',\r\n textDecoration: fontStyle.textDecoration ? 'underline' : '',\r\n fontStyle: fontStyle.fontItalic ? 'italic' : '',\r\n borderRadius: borderStyle.borderRadius + 'px',\r\n backgroundImage: `url('${this.backgroundImage}')`,\r\n paddingLeft: `${space.left}px`,\r\n paddingRight: `${space.right}px`\r\n }\r\n if(borderStyle.type === 1&& borderColor) {\r\n style.border = `1px solid ${borderColor}`\r\n }\r\n if (borderStyle.type === 2) {\r\n style.borderTop = borderTop ? `1px solid ${borderTop}` : 'none'\r\n style.borderRight = borderRight ? `1px solid ${borderRight}` : 'none'\r\n style.borderBottom = borderBottom ? `1px solid ${borderBottom}` : 'none'\r\n style.borderLeft = borderLeft? `1px solid ${borderLeft}` : 'none'\r\n }\r\n return style\r\n }\r\n },\r\n methods: {\r\n textMouseOver() {\r\n if(this.attributeJson.fontStyle.hoverObj.color) {\r\n this.$set(this.hoverButtonStyle, 'color', this.attributeJson.fontStyle.hoverObj.color)\r\n }\r\n },\r\n textMouseLeave() {\r\n this.$set(this.hoverButtonStyle, 'color', '')\r\n },\r\n // 点击\r\n pageClick() {\r\n if(this.attributeJson.linkObj.jumpLinkType) {\r\n try {\r\n dataSaveDecorationPageComponentEventFn(\r\n {\r\n uniqueId: this.recordId + '_' + this.sortId, // 组件_id\r\n uniqueName: this.attributeJson.uniqueName, // 组件_名称\r\n componentType: 17,\r\n popData: {},\r\n materialId: this.recordId + '_' + this.sortId, //素材id\r\n materialName: this.attributeJson.uniqueName, //素材名称\r\n refererPagePath: this.refererPagePath,\r\n path: this.path,\r\n brand: this.brand,\r\n position: 1,\r\n event: 'bannerClick'\r\n },\r\n this.envUrl\r\n )\r\n } catch(err) {\r\n console.log(err)\r\n }\r\n }\r\n \r\n this.$emit('jumpLink', this.attributeJson.linkObj)\r\n },\r\n // 上报数据\r\n reportData(h) {\r\n if(this.isReport) return\r\n let ref = this.$refs[`button${this.attributeJson.sort}`]\r\n if( !ref || ref.style.display == 'none') return\r\n let el = ref.getBoundingClientRect()\r\n if(el.top <= h) {\r\n this.isReport = true\r\n dataSaveDecorationPageComponentEventFn(\r\n {\r\n uniqueId: this.recordId + '_' + this.sortId, // 组件_id\r\n uniqueName: this.attributeJson.uniqueName, // 组件_名称\r\n componentType: 17,\r\n popData: {},\r\n materialId: this.recordId + '_' + this.sortId, //素材id\r\n materialName: this.attributeJson.uniqueName, //素材名称\r\n refererPagePath: this.refererPagePath,\r\n path: this.path,\r\n brand: this.brand,\r\n position: 1,\r\n event: 'bannerShow'\r\n },\r\n this.envUrl\r\n )\r\n }\r\n }\r\n }\r\n}","<template>\r\n <div\r\n :style=\"{\r\n width: Math.round(attributeJson.baseStyle.w * ratio) + 'px',\r\n height: Math.round(attributeJson.baseStyle.h * ratio) + 'px',\r\n left: Math.round(attributeJson.baseStyle.l * ratio) + 'px',\r\n top: Math.round(attributeJson.baseStyle.t * ratio) + 'px'\r\n }\"\r\n class=\"button-wrap\"\r\n >\r\n <div class=\"entrance-con\">\r\n <div \r\n :ref=\"`button${attributeJson.sort}`\"\r\n :class=\"['button-cl', `button-cl-${sortId}`, animationInObj.type ? enterClass : '']\" v-show=\"entranceShow\"\r\n @click=\"pageClick\"\r\n :style=\"{ animationDuration: `${animationInObj.duration}s` }\">\r\n <div\r\n class=\"button-content\"\r\n :class=\"[{ flexCenterBetween: iconImage }, animationHoverObj.type === 4 ? hoverDirection : '']\"\r\n @mouseover.stop=\"textMouseOver\"\r\n @mouseleave=\"textMouseLeave\"\r\n :style=\"[buttonStyle, { '--width': hoverStyleShow ? '100%' : '0', '--height': hoverStyleShow ? '100%' : '0', '--bgColor': animationHoverObj.bgStyle.backgroundColor }]\"\r\n v-hoverAnimate\r\n >\r\n <img v-if=\"iconStyle.type === 1 && iconStyle.position === 1 && iconImage\" :src=\"iconImage\" alt=\"\" />\r\n <div class=\"label\" :style=\"hoverButtonStyle\">{{ attributeJson.label || '按钮' }}</div>\r\n <img v-if=\"iconStyle.type === 1 && iconStyle.position === 2 && iconImage\" :src=\"iconImage\" alt=\"\" />\r\n\r\n <!-- 换图 -->\r\n <img class=\"hover-image\" :src=\"hoverImage\" alt=\"\" v-if=\"animationHoverObj.type === 5 && hoverImage && hoverStyleShow\" />\r\n </div>\r\n <!-- 边框 -->\r\n <div class=\"hover-con\" v-if=\"animationHoverObj.type === 2\" :style=\"[hoverStyle, { opacity: hoverStyleShow ? 1 : 0, borderRadius: attributeJson.borderStyle.borderRadius + 'px' }]\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport buttonItemJs from './buttonItem.js'\r\nexport default buttonItemJs\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import 'buttonItem';\r\n@import '../animate.scss';\r\n</style>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buttonItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buttonItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./buttonItem.vue?vue&type=template&id=572082d3&scoped=true&\"\nimport script from \"./buttonItem.vue?vue&type=script&lang=js&\"\nexport * from \"./buttonItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./buttonItem.vue?vue&type=style&index=0&id=572082d3&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"572082d3\",\n null\n \n)\n\nexport default component.exports","import buttonItem from './buttonItem.vue'\r\nexport default buttonItem","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"product-wrap\",style:({\n width: Math.round(_vm.attributeJson.baseStyle.w * _vm.ratio) + 'px',\n height: Math.round(_vm.attributeJson.baseStyle.h * _vm.ratio) + 'px',\n left: Math.round(_vm.attributeJson.baseStyle.l * _vm.ratio) + 'px',\n top: Math.round(_vm.attributeJson.baseStyle.t * _vm.ratio) + 'px'\n })},[_c('div',{class:['product-list','entrance-con',(\"entrance-con\" + _vm.sortId)],style:({'--hoverColor': _vm.paginationStyle.hoverColor || _vm.paginationStyle.color, '--activeColor': _vm.paginationStyle.activeColor, '--color': _vm.paginationStyle.color})},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.entranceShow),expression:\"entranceShow\"}],ref:(\"entrance\" + (_vm.attributeJson.sort)),class:['product-con', _vm.animationInObj.type ? _vm.enterClass : ''],style:([{\n width: ((_vm.baseStyle.w * _vm.ratio) + \"px\"),\n height: ((_vm.baseStyle.h * _vm.ratio) + \"px\"),\n padding: (\"0 \" + (_vm.attributeJson.goodsPaddingSpacing) + \"px\"),\n animationDuration: ((_vm.animationInObj.duration) + \"s\")\n }])},[(!_vm.isSwiper)?_c('div',{ref:(\"slide\" + _vm.sortId),class:(\"slide-con slide-con-\" + _vm.styleType + \"-\" + _vm.mode),style:({width: _vm.attributeJson.baseStyle.w * _vm.ratio + _vm.attributeJson.goodsSpacing +'px',\n margin:('0px -'+ _vm.attributeJson.goodsSpacing/2 + 'px')})},_vm._l((_vm.productList),function(item,index){return _c('div',{directives:[{name:\"hoverAnimate\",rawName:\"v-hoverAnimate\",value:({key: 'productIndex', value: index}),expression:\"{key: 'productIndex', value: index}\"}],key:item.id,ref:(\"product\" + (item.code) + index),refInFor:true,class:['product-item',(\"product\" + (item.code) + index)],style:([_vm.productStyle]),on:{\"click\":function($event){return _vm.gotoPDP(item.code, item.colorCode, item.name, index)}}},[_c('div',{staticClass:\"product-image\"},[_c('img',{style:([(_vm.animationHoverObj.type === 3 && _vm.productIndex == index) ? _vm.hoverStyle : '']),attrs:{\"src\":(_vm.attributeJson.goodsImgType == 2 && item.customImage) ? item.customImage : item.mainPicUrl,\"alt\":item.name}})]),(_vm.attributeJson.showInfo.length!=0)?_c('div',{class:['product-info',(\"position\" + (_vm.attributeJson.infoPoisition)), {'transparent': _vm.attributeJson.isHover == 2 && _vm.productIndex!=index}]},[_vm._t(\"productInfo\",function(){return [(_vm.attributeJson.showInfo.indexOf(1) > -1)?_c('div',{staticClass:\"product-name\"},[_vm._v(_vm._s(item.name))]):_vm._e(),_c('div',{staticClass:\"price-con\"},[(_vm.attributeJson.showInfo.indexOf(2) > -1)?_c('div',[_vm._v(\"¥\"+_vm._s(item.salesPrice || 0))]):_vm._e(),(item.salesPrice!=item.standardPrice && _vm.attributeJson.showInfo.indexOf(3) > -1)?_c('div',{staticClass:\"standardPrice\"},[_vm._v(\"¥\"+_vm._s(item.standardPrice || 0))]):_vm._e()])]})],2):_vm._e(),(_vm.animationHoverObj.type === 2)?_c('div',{staticClass:\"hover-con\",style:([_vm.hoverStyle, {opacity: _vm.productIndex === index? 1 : 0, margin: (\"0 \" + (_vm.goodsSpacing / 2) + \"px\")}])}):_vm._e()])}),0):_vm._e(),(_vm.isSwiper)?_c('div',{key:_vm.styleType+_vm.indicatorType,ref:(\"slide\" + _vm.sortId),class:(\"swiper-container swiper-container-\" + _vm.sortId),attrs:{\"id\":(\"mySwiper-\" + _vm.sortId)}},[_c('div',{staticClass:\"swiper-wrapper\",style:([{\n width: ((_vm.baseStyle.w * _vm.ratio) + \"px\")\n }])},_vm._l((_vm.productList),function(item,index){return _c('div',{directives:[{name:\"hoverAnimate\",rawName:\"v-hoverAnimate\",value:({key: 'productIndex', value: index}),expression:\"{key: 'productIndex', value: index}\"}],key:item.id,class:(\"swiper-slide swiper-slide-\" + _vm.styleType + \"-\" + _vm.mode),style:([_vm.productStyle])},[_c('div',{ref:(\"product\" + (item.code) + index),refInFor:true,style:({height: ((_vm.attributeJson.baseStyle.h * _vm.ratio) + \"px\")}),on:{\"click\":function($event){return _vm.gotoPDP(item.code, item.colorCode, item.name, index)}}},[_c('div',{staticClass:\"product-image\"},[_c('img',{style:([(_vm.animationHoverObj.type === 3 && _vm.productIndex == index) ? _vm.hoverStyle : '']),attrs:{\"src\":(_vm.attributeJson.goodsImgType==2 && item.customImage) ? item.customImage : item.mainPicUrl,\"alt\":\"\"}})]),(_vm.attributeJson.showInfo.length!=0)?_c('div',{class:['product-info',(\"position\" + (_vm.attributeJson.infoPoisition)), {'transparent': _vm.attributeJson.isHover == 2 && _vm.productIndex!=index }]},[_vm._t(\"productInfo\",function(){return [(_vm.attributeJson.showInfo.indexOf(1) > -1)?_c('div',{staticClass:\"product-name\"},[_vm._v(_vm._s(item.name))]):_vm._e(),_c('div',{staticClass:\"price-con\"},[(_vm.attributeJson.showInfo.indexOf(2) > -1)?_c('div',[_vm._v(\"¥\"+_vm._s(item.salesPrice || 0))]):_vm._e(),(item.salesPrice!=item.standardPrice && _vm.attributeJson.showInfo.indexOf(3) > -1)?_c('div',{staticClass:\"standardPrice\"},[_vm._v(\"¥\"+_vm._s(item.standardPrice || 0))]):_vm._e()])]})],2):_vm._e(),(_vm.animationHoverObj.type === 2)?_c('div',{staticClass:\"hover-con\",style:([_vm.hoverStyle, {opacity: _vm.productIndex === index? 1 : 0}])}):_vm._e()])])}),0),(_vm.hasScrollBar)?_c('div',{class:(\"swiper-scrollbar swiper-scrollbar-\" + _vm.sortId)}):_vm._e(),(_vm.hasSwiperButton)?_c('div',{class:(\"swiper-button-prev swiper-button-prev-\" + _vm.sortId)},[_vm._t(\"swiper-button-prev\",function(){return [(_vm.indicatorType == 2)?_c('div',[_c('span',{staticClass:\"cms2iconfont iconleft\",style:(_vm.pageStyle)})]):_vm._e()]})],2):_vm._e(),(_vm.hasSwiperButton)?_c('div',{class:(\"swiper-button-next swiper-button-next-\" + _vm.sortId)},[_vm._t(\"swiper-button-next\",function(){return [(_vm.indicatorType == 2)?_c('div',[_c('span',{staticClass:\"cms2iconfont iconright\",style:(_vm.pageStyle)})]):_vm._e()]})],2):_vm._e()]):_vm._e()])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Swiper from 'swiper/js/swiper.js'\r\nimport 'swiper/css/swiper.css'\r\nimport { cmsMixin } from '../mixin'\r\nimport { ComService } from '../../../api/com-service'\r\nimport { dataSaveDecorationPageComponentEventFn } from '../../../utils/utils'\r\n\r\nexport default {\r\n name: 'productItem',\r\n mixins: [cmsMixin],\r\n components: {},\r\n props: {\r\n sortId: {\r\n type: Number\r\n }\r\n },\r\n data() {\r\n return {\r\n productList: [], // 商品列表\r\n swiper: '',\r\n productStyle: {}, // 商品组件样式\r\n service: new ComService(),\r\n productIndex: '',\r\n windowHeight: 0\r\n }\r\n },\r\n watch: {\r\n addProduct: {\r\n handler(val) {\r\n if (val.type == 1 && val.itemCodeList.length == 0) return\r\n if (val.type == 2 && !val.categoryGroupCode) return\r\n if (val.type == 3 && !val.cmsSortCode) return\r\n this.getProductList()\r\n },\r\n immediate: true,\r\n deep: true\r\n },\r\n ratio: {\r\n handler() {\r\n if (!this.isSwiper && this.productStyle.width) {\r\n this.productStyle.width = (this.attributeJson.baseStyle.w * this.ratio - this.attributeJson.goodsPaddingSpacing * 2 + this.goodsSpacing) / this.showNum + 'px'\r\n }\r\n }\r\n }\r\n },\r\n computed: {\r\n addProduct() {\r\n return this.attributeJson.addProduct\r\n },\r\n goodsPaddingSpacing() {\r\n return this.attributeJson.goodsPaddingSpacing\r\n },\r\n goodsSpacing() {\r\n return this.attributeJson.goodsSpacing\r\n },\r\n itemsPerLine() {\r\n return this.attributeJson.itemsPerLine\r\n },\r\n indicatorType() {\r\n return this.attributeJson.indicatorType\r\n },\r\n // 是否为轮播图\r\n isSwiper() {\r\n return (this.mode == 'pc' && this.styleType == 1) || (this.mode == 'mobile' && this.styleType == 2 && (this.indicatorType == 2 || this.indicatorType == 3))\r\n },\r\n // 是否有左右指示器\r\n hasSwiperButton() {\r\n return (this.mode == 'pc' && this.styleType == 1 && this.indicatorType == 2) || (this.mode == 'mobile' && this.styleType == 2 && this.indicatorType == 2)\r\n },\r\n // 是否有底部滚动条\r\n hasScrollBar() {\r\n return this.mode == 'mobile' && this.styleType == 2 && this.indicatorType == 3\r\n },\r\n // 指示器样式\r\n paginationStyle() {\r\n return this.attributeJson.paginationStyle\r\n },\r\n pageStyle() {\r\n return {\r\n color: this.paginationStyle.color\r\n }\r\n },\r\n showNum() {\r\n let num = 1\r\n if (this.mode == 'pc') {\r\n num = this.attributeJson.itemsPerLine\r\n } else {\r\n if (this.attributeJson.styleType == 1) {\r\n num = 2.5\r\n } else if (this.attributeJson.styleType == 2) {\r\n num = this.attributeJson.itemsPerLine\r\n }\r\n }\r\n return num\r\n }\r\n },\r\n mounted() {},\r\n methods: {\r\n // 获取商品列表\r\n getProductList: function() {\r\n let params = {}\r\n switch (this.addProduct.type) {\r\n case 1:\r\n params = {\r\n itemCodeList: this.addProduct.itemCodeList,\r\n pageNum: 1,\r\n pageSize: this.addProduct.itemCodeList.length\r\n }\r\n break\r\n case 2:\r\n params = {\r\n categoryParam: {\r\n categoryCodeList: this.addProduct.categoryCodeList,\r\n categoryGroupCode: this.addProduct.categoryGroupCode\r\n },\r\n pageNum: 1,\r\n pageSize: this.addProduct.max,\r\n sortRuleId: this.addProduct.sortId\r\n }\r\n break\r\n case 3:\r\n params = {\r\n pageNum: 1,\r\n pageSize: this.addProduct.max,\r\n sortField: this.addProduct.cmsSortCode\r\n }\r\n break\r\n }\r\n\r\n if (this.addProduct.type == 3) {\r\n this.service.getSortProductInfo(this.envUrl, params, this.language).then(res => {\r\n if (res && res.list) {\r\n // 判断入场动画,是否需要展示\r\n let productEntrance = document.querySelector(`.entrance-con${this.sortId}`)\r\n let entrance = productEntrance && productEntrance.classList.contains('entrance-demonstrate')\r\n if (entrance && productEntrance.firstChild.style) {\r\n productEntrance.firstChild.style.display = 'block'\r\n }\r\n this.productList = res.list\r\n this.initProduct()\r\n } else {\r\n this.productList = []\r\n }\r\n })\r\n } else {\r\n this.service.getProductInfo(this.envUrl, params, this.language).then(res => {\r\n if (res && res.list) {\r\n // 判断入场动画,是否需要展示\r\n let productEntrance = document.querySelector(`.entrance-con${this.sortId}`)\r\n let entrance = productEntrance && productEntrance.classList.contains('entrance-demonstrate')\r\n if (entrance && productEntrance.firstChild.style) {\r\n productEntrance.firstChild.style.display = 'block'\r\n }\r\n this.productList = res.list\r\n this.initProduct()\r\n } else {\r\n this.productList = []\r\n }\r\n })\r\n }\r\n },\r\n initProduct: function() {\r\n let { attributeJson, addProduct } = this\r\n if (attributeJson.goodsImgType == 2 && addProduct.customImageList.length != 0) {\r\n this.productList.forEach((item, index) => {\r\n if (addProduct.customImageList[index].picList.length != 0) {\r\n this.$set(item, 'customImage', addProduct.customImageList[index].picList[0].resourcePath)\r\n }\r\n })\r\n }\r\n if (this.productList && this.productList.length > 0) {\r\n if (this.isSwiper) {\r\n this.initSwiper()\r\n } else {\r\n this.initSlide()\r\n }\r\n }\r\n },\r\n // 初始化轮播图\r\n initSwiper: function() {\r\n let { attributeJson, indicatorType, styleType } = this\r\n this.$nextTick(() => {\r\n if (this.swiper) {\r\n this.swiper.destroy(true, true)\r\n this.swiper = null\r\n }\r\n this.options = {\r\n effect: 'slide',\r\n autoplay: false,\r\n slidesPerView: this.showNum,\r\n spaceBetween: attributeJson.goodsSpacing\r\n }\r\n if (styleType == 2 && indicatorType == 2) {\r\n this.options.pagination = { el: `.swiper-pagination-${this.sortId}`, clickable: true }\r\n }\r\n if (this.hasSwiperButton) {\r\n this.options.navigation = {\r\n nextEl: `.swiper-button-next-${this.sortId}`,\r\n prevEl: `.swiper-button-prev-${this.sortId}`\r\n }\r\n }\r\n if (this.hasScrollBar) {\r\n this.options.scrollbar = {\r\n el: `.swiper-scrollbar-${this.sortId}`,\r\n draggable: true\r\n }\r\n this.options.freeMode = true\r\n }\r\n this.swiper = new Swiper(`.swiper-container-${this.sortId}`, this.options)\r\n this.$nextTick(()=>{\r\n this.reportData(this.windowHeight)\r\n })\r\n })\r\n },\r\n initSlide() {\r\n this.productStyle = {\r\n padding: `0 ${this.goodsSpacing / 2}px`,\r\n width: (this.attributeJson.baseStyle.w * this.ratio - this.attributeJson.goodsPaddingSpacing * 2 + this.goodsSpacing) / this.showNum + 'px',\r\n marginBottom: this.goodsSpacing + 'px'\r\n }\r\n this.$nextTick(()=>{\r\n this.reportData(this.windowHeight)\r\n })\r\n },\r\n gotoPDP(code, colorCode, name, index) {\r\n try {\r\n dataSaveDecorationPageComponentEventFn(\r\n {\r\n uniqueId: this.recordId + '_' + this.sortId, // 组件_id\r\n uniqueName: this.attributeJson.uniqueName, // 组件_名称\r\n componentType: 4,\r\n popData: {\r\n productCode: code,\r\n selectDataShow: name\r\n },\r\n materialId: this.recordId + '_' + this.sortId, //素材id\r\n materialName: this.attributeJson.uniqueName, //素材名称\r\n refererPagePath: this.refererPagePath,\r\n brand: this.brand,\r\n path: this.path,\r\n position: index + 1,\r\n event: 'bannerClick'\r\n },\r\n this.envUrl\r\n )\r\n } catch (err) {\r\n console.log(err)\r\n }\r\n this.$emit('gotoPDP', { code, colorCode })\r\n },\r\n // 上报数据\r\n reportData(h) {\r\n this.windowHeight = h\r\n if (this.productList.length == 0) return\r\n let ref = this.$refs[`entrance${this.attributeJson.sort}`]\r\n if (!ref || ref.style.display == 'none') return\r\n // 当有入场的动画时,需要在入场时重新init一遍,否则轮播图有问题,原本用指令,只要监听entranceShow,但为兼容服务器渲染,指令不使用了\r\n if (this.isSwiper && !this.hasInitSwiper && this.enterClass) {\r\n this.hasInitSwiper = true\r\n this.initSwiper()\r\n }\r\n this.productList.forEach((item, index) => {\r\n if (item.isReport) return\r\n if (!this.$refs[`product${item.code}${index}`]) return\r\n let el = this.$refs[`product${item.code}${index}`][0].getBoundingClientRect()\r\n if (el.top <= h) {\r\n item.isReport = true\r\n dataSaveDecorationPageComponentEventFn(\r\n {\r\n uniqueId: this.recordId + '_' + this.sortId, // 组件_id\r\n uniqueName: this.attributeJson.uniqueName, // 组件_名称\r\n componentType: 4,\r\n popData: {\r\n productCode: item.code,\r\n selectDataShow: item.name\r\n },\r\n materialId: this.recordId + '_' + this.sortId, //素材id\r\n materialName: this.attributeJson.uniqueName, //素材名称\r\n refererPagePath: this.refererPagePath,\r\n brand: this.brand,\r\n path: this.path,\r\n position: index + 1,\r\n event: 'bannerShow'\r\n },\r\n this.envUrl\r\n )\r\n }\r\n })\r\n }\r\n }\r\n}\r\n","<template>\r\n <div\r\n :style=\"{\r\n width: Math.round(attributeJson.baseStyle.w * ratio) + 'px',\r\n height: Math.round(attributeJson.baseStyle.h * ratio) + 'px',\r\n left: Math.round(attributeJson.baseStyle.l * ratio) + 'px',\r\n top: Math.round(attributeJson.baseStyle.t * ratio) + 'px'\r\n }\"\r\n class=\"product-wrap\"\r\n >\r\n <div :class=\"['product-list','entrance-con',`entrance-con${sortId}`]\" :style=\"{'--hoverColor': paginationStyle.hoverColor || paginationStyle.color, '--activeColor': paginationStyle.activeColor, '--color': paginationStyle.color}\">\r\n <div\r\n :ref=\"`entrance${attributeJson.sort}`\"\r\n :class=\"['product-con', animationInObj.type ? enterClass : '']\"\r\n v-show=\"entranceShow\"\r\n :style=\"[{\r\n width: `${baseStyle.w * ratio}px`,\r\n height: `${baseStyle.h * ratio}px`,\r\n padding: `0 ${attributeJson.goodsPaddingSpacing}px`,\r\n animationDuration: `${animationInObj.duration}s`\r\n }]\">\r\n <!-- 非swiper展示样式 -->\r\n <div :class=\"`slide-con slide-con-${styleType}-${mode}`\"\r\n :style=\"{width: attributeJson.baseStyle.w * ratio + attributeJson.goodsSpacing +'px',\r\n margin:('0px -'+ attributeJson.goodsSpacing/2 + 'px')}\"\r\n :ref=\"`slide${sortId}`\"\r\n v-if=\"!isSwiper\">\r\n <div \r\n :ref=\"`product${item.code}${index}`\"\r\n :class=\"['product-item',`product${item.code}${index}`]\" \r\n v-hoverAnimate=\"{key: 'productIndex', value: index}\"\r\n v-for=\"(item, index) in productList\"\r\n @click=\"gotoPDP(item.code, item.colorCode, item.name, index)\"\r\n :style=\"[productStyle]\"\r\n :key=\"item.id\">\r\n <div class=\"product-image\">\r\n <img :src=\"(attributeJson.goodsImgType == 2 && item.customImage) ? item.customImage : item.mainPicUrl\" :style=\"[(animationHoverObj.type === 3 && productIndex == index) ? hoverStyle : '']\" :alt=\"item.name\" />\r\n </div>\r\n <div v-if=\"attributeJson.showInfo.length!=0\" :class=\"['product-info',`position${attributeJson.infoPoisition}`, {'transparent': attributeJson.isHover == 2 && productIndex!=index}]\">\r\n <slot name=\"productInfo\">\r\n <div class=\"product-name\" v-if=\"attributeJson.showInfo.indexOf(1) > -1\">{{ item.name }}</div>\r\n <div class=\"price-con\">\r\n <div v-if=\"attributeJson.showInfo.indexOf(2) > -1\">¥{{ item.salesPrice || 0 }}</div>\r\n <div v-if=\"item.salesPrice!=item.standardPrice && attributeJson.showInfo.indexOf(3) > -1\" class=\"standardPrice\">¥{{ item.standardPrice || 0 }}</div>\r\n </div>\r\n </slot>\r\n </div>\r\n \r\n <!-- 边框 -->\r\n <div class=\"hover-con\" v-if=\"animationHoverObj.type === 2\" :style=\"[hoverStyle, {opacity: productIndex === index? 1 : 0, margin: `0 ${goodsSpacing / 2}px`}]\"></div>\r\n </div>\r\n </div>\r\n\r\n <!-- 轮播图 -->\r\n <div v-if=\"isSwiper\" :class=\"`swiper-container swiper-container-${sortId}`\" :id=\"`mySwiper-${sortId}`\" :ref=\"`slide${sortId}`\" :key=\"styleType+indicatorType\">\r\n <div\r\n class=\"swiper-wrapper\"\r\n :style=\"[{\r\n width: `${baseStyle.w * ratio}px`\r\n }]\">\r\n <div \r\n :class=\"`swiper-slide swiper-slide-${styleType}-${mode}`\"\r\n v-hoverAnimate=\"{key: 'productIndex', value: index}\"\r\n v-for=\"(item, index) in productList\"\r\n :style=\"[productStyle]\"\r\n :key=\"item.id\">\r\n <div :ref=\"`product${item.code}${index}`\" @click=\"gotoPDP(item.code, item.colorCode, item.name, index)\" :style=\"{height: `${attributeJson.baseStyle.h * ratio}px`}\">\r\n <!-- 商品图片 -->\r\n <div class=\"product-image\">\r\n <img :src=\"(attributeJson.goodsImgType==2 && item.customImage) ? item.customImage : item.mainPicUrl\" :style=\"[(animationHoverObj.type === 3 && productIndex == index) ? hoverStyle : '']\" alt=\"\" />\r\n </div>\r\n <div v-if=\"attributeJson.showInfo.length!=0\" :class=\"['product-info',`position${attributeJson.infoPoisition}`, {'transparent': attributeJson.isHover == 2 && productIndex!=index }]\">\r\n <slot name=\"productInfo\">\r\n <div class=\"product-name\" v-if=\"attributeJson.showInfo.indexOf(1) > -1\">{{ item.name }}</div>\r\n <div class=\"price-con\">\r\n <div v-if=\"attributeJson.showInfo.indexOf(2) > -1\">¥{{ item.salesPrice || 0 }}</div>\r\n <div v-if=\"item.salesPrice!=item.standardPrice && attributeJson.showInfo.indexOf(3) > -1\" class=\"standardPrice\">¥{{ item.standardPrice || 0 }}</div>\r\n </div>\r\n </slot>\r\n </div>\r\n\r\n <!-- 边框 -->\r\n <div class=\"hover-con\" v-if=\"animationHoverObj.type === 2\" :style=\"[hoverStyle, {opacity: productIndex === index? 1 : 0}]\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- 滑动条 -->\r\n <div v-if=\"hasScrollBar\" :class=\"`swiper-scrollbar swiper-scrollbar-${sortId}`\"></div>\r\n\r\n <div :class=\"`swiper-button-prev swiper-button-prev-${sortId}`\" v-if=\"hasSwiperButton\">\r\n <slot name=\"swiper-button-prev\">\r\n <div v-if=\"indicatorType == 2\"><span :style=\"pageStyle\" class=\"cms2iconfont iconleft\"></span></div>\r\n </slot>\r\n </div>\r\n <div :class=\"`swiper-button-next swiper-button-next-${sortId}`\" v-if=\"hasSwiperButton\">\r\n <slot name=\"swiper-button-next\">\r\n <div v-if=\"indicatorType == 2\"><span :style=\"pageStyle\" class=\"cms2iconfont iconright\" ></span></div>\r\n </slot>\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport productItemJs from './productItem.js'\r\nexport default productItemJs\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import 'productItem';\r\n@import \"../animate.scss\";\r\n</style>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./productItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./productItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./productItem.vue?vue&type=template&id=d1cef142&scoped=true&\"\nimport script from \"./productItem.vue?vue&type=script&lang=js&\"\nexport * from \"./productItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./productItem.vue?vue&type=style&index=0&id=d1cef142&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d1cef142\",\n null\n \n)\n\nexport default component.exports","import productItem from './productItem.vue'\r\nexport default productItem","// import draggable from \"vuedraggable\";\r\nimport textItem from \"../textItem\";\r\nimport imgNav from \"../imgNav/\";\r\nimport videoItem from '../videoItem/';\r\nimport swiperItem from '../swiperItem/';\r\nimport buttonItem from '../buttonItem/';\r\nimport productItem from \"../productItem/\";\r\n\r\nexport default {\r\n name: \"singleLayout\",\r\n inheritAttrs: false,\r\n components: {\r\n textItem,\r\n imgNav,\r\n videoItem,\r\n swiperItem,\r\n buttonItem,\r\n productItem,\r\n },\r\n props: {\r\n layOutData: {\r\n type: Object,\r\n default: () => { }\r\n },\r\n ratio: {\r\n type: Number,\r\n default: 1\r\n },\r\n // 是否可拖拽进入\r\n canDragInc: {\r\n type: Boolean,\r\n default: true\r\n }\r\n },\r\n data() {\r\n return {\r\n vLine: [],\r\n hLine: [],\r\n componentName:''\r\n };\r\n },\r\n computed: {\r\n layoutStyle:function () {\r\n if(this.layOutData.layoutStyle){\r\n return {\r\n backgroundImage:this.layOutData.layoutStyle.bgStyle.type === 2 && this.layOutData.layoutStyle.bgStyle.picList.length != 0 && `url(${this.layOutData.layoutStyle.bgStyle.picList[0].resourcePath})`,\r\n backgroundColor:this.layOutData.layoutStyle.bgStyle.type === 1 && this.layOutData.layoutStyle.bgStyle.backgroundColor\r\n }\r\n }else{\r\n return {}\r\n }\r\n }\r\n },\r\n methods: {\r\n reportData(h) {\r\n let refs = this.$refs.singleComponent\r\n refs&&refs.forEach(item => {\r\n item.reportData(h)\r\n });\r\n }\r\n }\r\n};\r\n1","<template>\r\n <div\r\n class=\"single-layout\"\r\n :style=\"layoutStyle\"\r\n >\r\n <div\r\n style=\"width: 100%; height: 100%\"\r\n >\r\n <div v-for=\"(item, index) in layOutData.componentList\" :key=\"index\">\r\n <template v-if=\"item.type > 100\">\r\n {{item.sort}}\r\n <slot :name=\"`dgCustomComponent${item.sort}`\" :attributeJson=\"JSON.parse(JSON.stringify(item.attributeJson))\"></slot>\r\n </template>\r\n <template v-if=\"item.type <= 100\">\r\n <component\r\n ref=\"singleComponent\"\r\n :is=\"item.component\"\r\n :ratio=\"ratio\"\r\n :attributeJson=\"item.attributeJson\"\r\n :sortId=\"item.sort\"\r\n :key=\"item.sort\"\r\n v-bind=\"$attrs\"\r\n v-on=\"$listeners\"\r\n v-if=\"item.displayType == 1\"\r\n :style=\"{zIndex: index + 1}\"\r\n >\r\n </component>\r\n </template>\r\n </div>\r\n <!--辅助线END-->\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport singleLayoutJs from \"./singleLayout.js\";\r\nexport default singleLayoutJs;\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import \"singleLayout\";\r\n</style>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./singleLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./singleLayout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./singleLayout.vue?vue&type=template&id=666a807e&scoped=true&\"\nimport script from \"./singleLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./singleLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./singleLayout.vue?vue&type=style&index=0&id=666a807e&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"666a807e\",\n null\n \n)\n\nexport default component.exports","import singleLayout from './singleLayout.vue'\r\nexport default singleLayout","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{key:_vm.layOutData.layoutStyle.height,staticClass:\"multiple-layout\",style:({height: Math.round(_vm.layOutData.layoutStyle.height * _vm.ratio) + 'px'})},[_vm._l((_vm.layOutData.list),function(item,index){return [_c('div',{key:index,staticClass:\"multiple-item\",style:({\n width: Math.round(item.baseStyle.w * _vm.ratio) + 'px',\n height: Math.round(_vm.layOutData.layoutStyle.height * _vm.ratio) + 'px',\n zIndex: _vm.currentIndex == index?1:'auto'\n })},[_c('singleLayout',_vm._g(_vm._b({ref:\"multipleSingle\",refInFor:true,attrs:{\"layOutData\":item,\"componentList\":item.componentList,\"parent-l\":item.baseStyle.l,\"ratio\":_vm.ratio,\"recordId\":_vm.recordId,\"mode\":_vm.mode}},'singleLayout',_vm.$attrs,false),_vm.$listeners))],1)]})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","// import vueDraggableResizable from \"vue-draggable-resizable-gorkys\";\r\n// import 'vue-draggable-resizable-gorkys/dist/VueDraggableResizable.css'\r\nimport singleLayout from \"../singleLayout/\";\r\nexport default {\r\n name: \"multipleLayout\",\r\n components: {\r\n // vueDraggableResizable,\r\n singleLayout\r\n },\r\n props: {\r\n layOutData: {\r\n type: Object,\r\n default: () => {}\r\n },\r\n ratio: {\r\n type: Number,\r\n default: 1\r\n },\r\n mode: {\r\n type: String,\r\n default: \"pc\"\r\n },\r\n recordId: {\r\n type: Number,\r\n default: 0\r\n }\r\n },\r\n inheritAttrs: false,\r\n data() {\r\n return {\r\n w: 200,\r\n currentItem: null,\r\n currentIndex: \"\"\r\n };\r\n },\r\n watch: {\r\n // 'layOutData.layoutStyle.widthStyle.width': {\r\n // handler:function () {\r\n // this.w = this.ratio * (this.mode == 'pc' ? 1920 : 750)*this.layOutData.layoutStyle.widthStyle.width/100\r\n // },\r\n // deep:true,\r\n // immediate:true\r\n // }\r\n },\r\n mounted() {},\r\n methods: {\r\n reportData(h) {\r\n let refs = this.$refs.multipleSingle\r\n refs.forEach(item=>{\r\n item.reportData(h)\r\n })\r\n }\r\n }\r\n};\r\n","<template>\r\n <div class=\"multiple-layout\" :key=\"layOutData.layoutStyle.height\" :style=\"{height: Math.round(layOutData.layoutStyle.height * ratio) + 'px'}\">\r\n <template v-for=\"(item,index) in layOutData.list\">\r\n <div \r\n class=\"multiple-item\"\r\n :key=\"index\"\r\n :style=\"{\r\n width: Math.round(item.baseStyle.w * ratio) + 'px',\r\n height: Math.round(layOutData.layoutStyle.height * ratio) + 'px',\r\n zIndex: currentIndex == index?1:'auto'\r\n }\">\r\n <singleLayout ref=\"multipleSingle\" v-bind=\"$attrs\" v-on=\"$listeners\" :layOutData=\"item\" :componentList=\"item.componentList\" :parent-l=\"item.baseStyle.l\" :ratio=\"ratio\" :recordId=\"recordId\" :mode=\"mode\"></singleLayout>\r\n </div>\r\n </template>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport multipleLayoutJs from \"./multipleLayout.js\";\r\nexport default multipleLayoutJs;\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import \"multipleLayout\";\r\n</style>","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./multipleLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./multipleLayout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./multipleLayout.vue?vue&type=template&id=8ff3e658&scoped=true&\"\nimport script from \"./multipleLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./multipleLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./multipleLayout.vue?vue&type=style&index=0&id=8ff3e658&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8ff3e658\",\n null\n \n)\n\nexport default component.exports","import multipleLayout from './multipleLayout.vue'\r\nexport default multipleLayout","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:(\"custom\" + (_vm.layOutData.sort)),staticClass:\"custom-layout\"},[_c('div',{staticClass:\"add-con\"}),_vm._t(\"customComponent\",null,{\"attributeJson\":_vm.layOutData})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { dataSaveDecorationPageComponentEventFn } from '../../../utils/utils';\r\nexport default {\r\n name: 'customLayout',\r\n props: {\r\n layOutData: {\r\n type: Object,\r\n default: () => {}\r\n },\r\n envUrl: {\r\n type: String,\r\n default: ''\r\n },\r\n path: {\r\n type: String\r\n }\r\n },\r\n inheritAttrs: false,\r\n methods:{\r\n // 上报数据\r\n reportData(h) {\r\n if(this.isReport) return\r\n let ref = this.$refs[`custom${this.layOutData.sort}`]\r\n if(!ref) return\r\n let el = ref.getBoundingClientRect()\r\n if(el.top <= h && el.top >= 0) {\r\n this.isReport = true\r\n dataSaveDecorationPageComponentEventFn(\r\n {\r\n uniqueId: this.layOutData.sort, // 组件_id\r\n uniqueName: this.uniqueName, // 组件_名称\r\n componentType: 7,\r\n popData: {},\r\n materialId: this.layOutData.sort, //素材id\r\n materialName: this.uniqueName, //素材名称\r\n refererPagePath: this.refererPagePath,\r\n brand: this.brand,\r\n path: this.path,\r\n position: 1,\r\n event: 'bannerShow'\r\n },\r\n this.envUrl\r\n )\r\n }\r\n }\r\n }\r\n}\r\n","<template>\r\n <div class=\"custom-layout\" :ref=\"`custom${layOutData.sort}`\">\r\n <div class=\"add-con\"></div>\r\n <slot name=\"customComponent\" :attributeJson=\"layOutData\"></slot>\r\n </div>\r\n</template>\r\n\r\n<script>\r\n import customLayoutJs from './customLayout.js'\r\n export default customLayoutJs\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import \"customLayout\";\r\n</style>","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./customLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./customLayout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./customLayout.vue?vue&type=template&id=1453938c&scoped=true&\"\nimport script from \"./customLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./customLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./customLayout.vue?vue&type=style&index=0&id=1453938c&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1453938c\",\n null\n \n)\n\nexport default component.exports","import customLayout from './customLayout.vue'\r\nexport default customLayout","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tab-layout\"},[(_vm.hasTab)?_c('div',{staticClass:\"tab-detail tab-con\"},[_c('div',[(_vm.tabHeadInfo.showTitle == 2)?_c('div',{ref:\"tabHeadTitleDom\",style:(_vm.titleStyle)},[_c('span',[_vm._v(_vm._s(_vm.tabHeadInfo.customTitle == 1 ? _vm.tabHeadInfo.title : _vm.list[_vm.tabIndex].title))])]):_vm._e(),_c('div',{staticClass:\"tab-list\"},[_c('div',{staticClass:\"tab-line\"},_vm._l((_vm.list),function(item,index){return _c('navItem',{key:index,attrs:{\"item\":item,\"ratio\":_vm.ratio,\"mode\":_vm.mode,\"spacing\":_vm.layOutData.fontStyle.spacing * _vm.ratio,\"active\":_vm.tabIndex == index,\"navStyle\":_vm.navStyle(index)},nativeOn:{\"click\":function($event){return _vm.chooseTab(item, index)}}})}),1)]),_c('div',{staticClass:\"tab-content\",style:({\n height: _vm.list[_vm.tabIndex].height * _vm.ratio + 'px'\n })},[_c('singleLayout',_vm._g(_vm._b({ref:\"tabSingle\",attrs:{\"layOutData\":_vm.list[_vm.tabIndex],\"componentList\":_vm.list[_vm.tabIndex].componentList,\"ratio\":_vm.ratio,\"recordId\":_vm.recordId,\"mode\":_vm.mode}},'singleLayout',_vm.$attrs,false),_vm.$listeners))],1)])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"nav-item\",style:([_vm.navStyle, _vm.backStyle])},[_c('span',{style:({marginLeft:_vm.spacing+'px'})},[_vm._v(_vm._s(_vm.item.title))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\r\n name: 'navItem',\r\n props: {\r\n item: {\r\n type: Object,\r\n default: () => {}\r\n },\r\n active: {\r\n type: Boolean,\r\n default: false\r\n },\r\n navStyle: {\r\n type: Object,\r\n default: () => {}\r\n },\r\n spacing:{\r\n type:[String,Number],\r\n default:0\r\n }\r\n },\r\n data() {\r\n return {\r\n\r\n }\r\n },\r\n watch: {\r\n // item: {\r\n // handler(val) {\r\n // console.log('item', val);\r\n // },\r\n // immediate: true,\r\n // deep: true\r\n // }\r\n },\r\n computed: {\r\n backStyle() {\r\n let {item, active} = this\r\n return {\r\n backgroundColor: item.navStyle.type == 1 ? (active ? item.navStyle.activeColor: item.navStyle.backgroundColor) : '',\r\n backgroundImage: item.navStyle.type == 2 ? (active ? `url('${item.navStyle.activeBackImage}')` : `url('${item.navStyle.backImage}')`) : ''\r\n }\r\n }\r\n },\r\n methods: {\r\n\r\n }\r\n}","<template>\r\n <div\r\n class=\"nav-item\" \r\n :style=\"[navStyle, backStyle]\"><span :style=\"{marginLeft:spacing+'px'}\">{{item.title}}</span></div>\r\n</template>\r\n<script>\r\nimport navItemJs from './navItem.js';\r\nexport default navItemJs;\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import 'navItem';\r\n</style>","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./navItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./navItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./navItem.vue?vue&type=template&id=55eeeb47&scoped=true&\"\nimport script from \"./navItem.vue?vue&type=script&lang=js&\"\nexport * from \"./navItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./navItem.vue?vue&type=style&index=0&id=55eeeb47&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"55eeeb47\",\n null\n \n)\n\nexport default component.exports","import navItem from './navItem.vue';\r\nexport default navItem;","import navItem from './navItem/'\r\nimport singleLayout from '../singleLayout/'\r\nexport default {\r\n name: 'tabLayout',\r\n components: {\r\n navItem,\r\n singleLayout\r\n },\r\n props: {\r\n layOutData: {\r\n type: Object,\r\n default: () => {}\r\n },\r\n ratio: {\r\n type: Number,\r\n default: 1\r\n },\r\n mode: {\r\n type: String,\r\n default: 'pc'\r\n },\r\n recordId: {\r\n type: Number,\r\n default: 0\r\n }\r\n },\r\n data() {\r\n return {\r\n tabIndex: 0,\r\n activeSort: '',\r\n tabHeadTitleH: 0\r\n }\r\n },\r\n computed: {\r\n hasTab() {\r\n return this.layOutData.list.some(item => {\r\n return item.title\r\n })\r\n },\r\n list() {\r\n return this.layOutData.list\r\n },\r\n tabHeadInfo() {\r\n return this.layOutData.tabHeadInfo\r\n },\r\n navStyle() {\r\n let {\r\n tabHeadInfo: { width, height, space },\r\n borderStyle,\r\n fontStyle: {\r\n fontSize,\r\n color,\r\n fontWeight,\r\n textDecoration,\r\n fontItalic,\r\n hoverObj: { color: _color }\r\n }\r\n } = this.layOutData\r\n let { borderTop, borderRight, borderBottom, borderLeft, borderColor, hoverObj } = borderStyle\r\n return function(index) {\r\n return {\r\n marginLeft: index == 0 && `${(this.mode=='pc' ? 30 : 60) * this.ratio}px`,\r\n width: width * this.ratio + 'px',\r\n height: height * this.ratio + 'px',\r\n color: color,\r\n fontSize,\r\n fontWeight: fontWeight ? 'bold' : '',\r\n textDecoration: textDecoration ? 'underline' : '',\r\n fontStyle: fontItalic ? 'italic' : '',\r\n marginRight: (index == this.list.length -1) ? `${(this.mode=='pc' ? 30 : 60) * this.ratio}px` : space * this.ratio + 'px',\r\n borderTop: borderStyle.type === 2 && borderTop ? `1px solid ${borderTop}` : borderStyle.type === 1 && borderColor ? `1px solid ${borderColor}` : 'none',\r\n borderRight: borderStyle.type === 2 && borderRight ? `1px solid ${borderRight}` : borderStyle.type === 1 && borderColor ? `1px solid ${borderColor}` : 'none',\r\n borderBottom: borderStyle.type === 2 && borderBottom ? `1px solid ${borderBottom}` : borderStyle.type === 1 && borderColor ? `1px solid ${borderColor}` : 'none',\r\n borderLeft: borderStyle.type === 2 && borderLeft ? `1px solid ${borderLeft}` : borderStyle.type === 1 && borderColor ? `1px solid ${borderColor}` : 'none',\r\n '--hoverColor': _color,\r\n '--hoverBorderTop': hoverObj.type === 2 && hoverObj.borderTop ? `1px solid ${hoverObj.borderTop}` : hoverObj.type === 1 && hoverObj.borderColor ? `1px solid ${hoverObj.borderColor}` : 'none',\r\n '--hoverBorderRight':\r\n hoverObj.type === 2 && hoverObj.borderRight ? `1px solid ${hoverObj.borderRight}` : hoverObj.type === 1 && hoverObj.borderColor ? `1px solid ${hoverObj.borderColor}` : 'none',\r\n '--hoverBorderBottom':\r\n hoverObj.type === 2 && hoverObj.borderBottom ? `1px solid ${hoverObj.borderBottom}` : hoverObj.type === 1 && hoverObj.borderColor ? `1px solid ${hoverObj.borderColor}` : 'none',\r\n '--hoverBorderLeft':\r\n hoverObj.type === 2 && hoverObj.borderLeft ? `1px solid ${hoverObj.borderLeft}` : hoverObj.type === 1 && hoverObj.borderColor ? `1px solid ${hoverObj.borderColor}` : 'none'\r\n }\r\n }\r\n \r\n },\r\n titleStyle() {\r\n let {\r\n tabHeadInfo: {\r\n titleStyle: { fontSize, color, fontWeight, textDecoration, fontItalic }\r\n }\r\n } = this.layOutData\r\n return {\r\n color: color,\r\n fontSize,\r\n fontWeight: fontWeight ? 'bold' : '',\r\n textDecoration: textDecoration ? 'underline' : '',\r\n fontStyle: fontItalic ? 'italic' : '',\r\n paddingLeft: `${(this.mode == 'pc' ? 30 : 60) * this.ratio}px`,\r\n paddingBottom: `${(this.mode == 'pc' ? 40 : 80) * this.ratio}px`\r\n }\r\n }\r\n },\r\n watch: {\r\n 'layOutData.tabHeadInfo': {\r\n handler: function() {\r\n this.$nextTick(() => {\r\n this.tabHeadTitleH = this.layOutData.tabHeadInfo.showTitle == 2 ? (this.$refs['tabHeadTitleDom'] ? this.$refs['tabHeadTitleDom'].clientHeight : 0) : 0\r\n this.setLayoutH()\r\n })\r\n },\r\n immediate: true,\r\n deep: true\r\n },\r\n 'list.length': {\r\n handler: function() {\r\n //当导航变化时, 判断当前选中的选项及选中的索引\r\n let ind = this.list.findIndex((item) => {\r\n return item.sort == this.activeSort\r\n })\r\n if (ind > -1) {\r\n this.tabIndex = ind\r\n } else {\r\n this.tabIndex = this.tabIndex > 0 ? this.tabIndex - 1 : 0\r\n this.activeSort = this.list[this.tabIndex].sort\r\n }\r\n },\r\n deep: true\r\n },\r\n hasTab: {\r\n handler: function(val) {\r\n if (val) {\r\n this.activeSort = this.list[0].sort\r\n this.tabIndex = 0\r\n }\r\n }\r\n }\r\n },\r\n methods: {\r\n chooseTab(item, index) {\r\n this.activeSort = item.sort\r\n this.tabIndex = index\r\n this.setLayoutH()\r\n this.$emit('updateLayOut', { sort: this.layOutData.sort })\r\n setTimeout(()=>{\r\n this.reportData(this.h)\r\n },0)\r\n },\r\n setLayoutH: function() {\r\n this.$set(this.layOutData.layoutStyle, 'height', this.layOutData.list[this.tabIndex].height * 1 + this.layOutData.tabHeadInfo.height * 1 + (this.tabHeadTitleH * 1) / this.ratio)\r\n },\r\n reportData(h) {\r\n this.h = h\r\n let ref = this.$refs.tabSingle\r\n ref && ref.reportData(this.h)\r\n }\r\n }\r\n}\r\n","<template>\r\n <div class=\"tab-layout\">\r\n <div v-if=\"hasTab\" class=\"tab-detail tab-con\">\r\n <div>\r\n <div v-if=\"tabHeadInfo.showTitle == 2\" :style=\"titleStyle\" ref=\"tabHeadTitleDom\">\r\n <span>{{ tabHeadInfo.customTitle == 1 ? tabHeadInfo.title : list[tabIndex].title }}</span>\r\n </div>\r\n <div class=\"tab-list\">\r\n <div class=\"tab-line\">\r\n <navItem\r\n v-for=\"(item, index) in list\"\r\n :key=\"index\"\r\n @click.native=\"chooseTab(item, index)\"\r\n :item=\"item\"\r\n :ratio=\"ratio\"\r\n :mode=\"mode\"\r\n :spacing=\"layOutData.fontStyle.spacing * ratio\"\r\n :active=\"tabIndex == index\"\r\n :navStyle=\"navStyle(index)\"\r\n ></navItem>\r\n </div>\r\n </div>\r\n <div\r\n :style=\"{\r\n height: list[tabIndex].height * ratio + 'px'\r\n }\"\r\n class=\"tab-content\"\r\n >\r\n <singleLayout ref=\"tabSingle\" v-bind=\"$attrs\" v-on=\"$listeners\" :layOutData=\"list[tabIndex]\" :componentList=\"list[tabIndex].componentList\" :ratio=\"ratio\" :recordId=\"recordId\" :mode=\"mode\"></singleLayout>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport tabLayoutJs from './tabLayout.js'\r\nexport default tabLayoutJs\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import 'tabLayout';\r\n</style>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./tabLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./tabLayout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./tabLayout.vue?vue&type=template&id=fed59a16&scoped=true&\"\nimport script from \"./tabLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./tabLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./tabLayout.vue?vue&type=style&index=0&id=fed59a16&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"fed59a16\",\n null\n \n)\n\nexport default component.exports","import tabLayout from './tabLayout.vue'\r\nexport default tabLayout","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"slide-wrap\",style:({ '--hoverColor': _vm.paginationStyle.hoverColor || _vm.paginationStyle.color, '--activeColor': _vm.paginationStyle.activeColor, '--color': _vm.paginationStyle.color })},[_c('div',{key:_vm.indicatorType,class:[(\"swiper-container swiper-container-\" + _vm.recordId + \" swiper-container-\" + _vm.indicatorType)],attrs:{\"id\":(\"mySwiper-\" + _vm.recordId)}},[_c('div',{staticClass:\"swiper-wrapper\"},_vm._l((_vm.slideList),function(carousel,index){return _c('div',{key:index,class:['swiper-slide', {'slide-auto': _vm.widthStyle.type == 1 || _vm.centeredSlides}]},[_c('div',{staticClass:\"slide-con\",style:([_vm.backStyle(carousel.i), {\n width: _vm.widthStyle.type == 1 ? ((carousel.slideWidth * _vm.ratio) + \"px\") : _vm.backStyle(carousel.i).width\n }])},[_c('singleLayout',_vm._g(_vm._b({ref:carousel.isCopy ? '':'slideSingle',refInFor:true,attrs:{\"layOutData\":carousel,\"ratio\":_vm.ratio,\"recordId\":_vm.recordId,\"mode\":_vm.mode}},'singleLayout',_vm.$attrs,false),_vm.$listeners))],1)])}),0),(_vm.hasSwiperButton)?_c('div',{class:['swiper-button-prev', (\"swiper-button-prev-\" + _vm.recordId)]},[_vm._t(\"swiper-button-prev\",function(){return [_c('div',{staticClass:\"arrow\"},[_c('span',{staticClass:\"cms2iconfont iconarrow-left\",style:(_vm.pageStyle)})])]})],2):_vm._e(),(_vm.hasSwiperButton)?_c('div',{class:['swiper-button-next', (\"swiper-button-next-\" + _vm.recordId)]},[_vm._t(\"swiper-button-next\",function(){return [_c('div',{staticClass:\"arrow\"},[_c('span',{staticClass:\"cms2iconfont iconarrow-right\",style:(_vm.pageStyle)})])]})],2):_vm._e()])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Swiper from 'swiper/js/swiper.js'\r\nimport singleLayout from '../singleLayout/'\r\nexport default {\r\n name: 'slideLayout',\r\n components: {\r\n singleLayout\r\n },\r\n props: {\r\n layOutData: {\r\n type: Object,\r\n default: () => {},\r\n },\r\n ratio: {\r\n type: Number,\r\n default: 1,\r\n },\r\n mode: {\r\n type: String,\r\n default: 'pc',\r\n },\r\n recordId: {\r\n type: Number,\r\n default: 0,\r\n },\r\n },\r\n data() {\r\n return {\r\n swiper: '',\r\n slideIndex: 0, // 当前轮播项\r\n layWidth: 1920,\r\n isInit: false, // 是否已初始化轮播图\r\n slideList:[]\r\n }\r\n },\r\n watch: {\r\n layoutStyle: {\r\n handler(val) {\r\n this.layWidth = (this.mode == 'pc' ? 1920 : 750) * (val.widthStyle.width / 100)\r\n },\r\n deep: true,\r\n immediate: true,\r\n },\r\n slideLen: {\r\n handler() {\r\n this.calculateWidth()\r\n },\r\n immediate: true,\r\n },\r\n },\r\n computed: {\r\n layoutStyle() {\r\n return this.layOutData.layoutStyle\r\n },\r\n // 分页器,导航按钮样式\r\n paginationStyle() {\r\n return this.layOutData.paginationStyle\r\n },\r\n // 背景设置\r\n bgStyle() {\r\n return this.layOutData.bgStyle\r\n },\r\n // 轮播列表\r\n list() {\r\n return this.layOutData.list\r\n },\r\n // 样式type\r\n styleType() {\r\n return this.layOutData.styleType\r\n },\r\n // 指示器type\r\n indicatorType() {\r\n return this.layOutData.indicatorType\r\n },\r\n // 宽度设置 1:自适应宽度 2:等宽设置\r\n widthStyle() {\r\n return this.layOutData.widthStyle\r\n },\r\n // 是否有左右轮播箭头\r\n hasSwiperButton() {\r\n return this.indicatorType == 2\r\n },\r\n // 分页器样式\r\n pageStyle() {\r\n return {\r\n color: this.layOutData.paginationStyle.color,\r\n }\r\n },\r\n // 背景样式\r\n backStyle() {\r\n let {bgStyle, layoutStyle, styleType, mode } = this\r\n return function(index){\r\n let item = this.list[index]\r\n let backgroundColor = ''\r\n let backgroundImage = ''\r\n if(bgStyle.status == 1){\r\n //整体\r\n if(bgStyle.type == 1){\r\n backgroundColor = bgStyle.backgroundColor || ''\r\n }else{\r\n backgroundImage = bgStyle.picList.length != 0? `url(${bgStyle.picList[0].resourcePath})`:''\r\n }\r\n }else{\r\n //单个\r\n if(item.bgStyle.type == 1){\r\n backgroundColor = item.bgStyle.backgroundColor || ''\r\n }else{\r\n backgroundImage = item.bgStyle.picList.length != 0? `url(${item.bgStyle.picList[0].resourcePath})`:''\r\n }\r\n }\r\n let hasCenteredSlides = mode == 'mobile' || (mode == 'pc' && styleType == 2)\r\n\r\n let allWidth = hasCenteredSlides ? this.layWidth - (this.layOutData.lineSlideNum + 1) * 0 - (mode=='mobile' ? 20 : 556) : this.layWidth\r\n // 样式二 原始宽度 - slide间隙 - 两边露出的间距\r\n return {\r\n width: allWidth / this.layOutData.lineSlideNum * this.ratio + 'px',\r\n height: `${Math.ceil(layoutStyle.height * this.ratio)}px`, // 向上取整,避免部分机型白线\r\n backgroundColor: backgroundColor,\r\n backgroundImage: backgroundImage,\r\n }\r\n }\r\n },\r\n slideLen() {\r\n return this.layOutData.list.length\r\n },\r\n centeredSlides() {\r\n return this.mode == 'mobile' || (this.mode == 'pc' && this.styleType == 2)\r\n }\r\n },\r\n methods: {\r\n calculateWidth:function () {\r\n let {list} = this\r\n list.forEach((item, index)=>{\r\n item.i = index\r\n })\r\n // 前后各增加相同数目的滑动容器,为了自行实现loop\r\n let item = JSON.parse(JSON.stringify(list))\r\n // 增加判断是否为复制出来的元素,防止影响数据上报\r\n item.forEach(ele=>{\r\n ele.isCopy = true\r\n })\r\n this.slideList = list.concat(JSON.parse(JSON.stringify(item)))\r\n this.slideList = item.concat(this.slideList)\r\n this.$nextTick(()=> {\r\n // type: 1 自适应宽度 计算每个模块的宽度\r\n if (this.layOutData.widthStyle.type == 2 ) {\r\n this.initSwiper()\r\n return\r\n }\r\n let { layWidth } = this\r\n this.slideList.forEach((item) => {\r\n let ele = item.componentList[0]\r\n let slideWidth = 0\r\n if (ele) {\r\n let attr = ele.attributeJson\r\n if (ele.type == 2) {\r\n // 图片\r\n let hasPic = attr.list.some((item) => {\r\n return item.picList.length != 0\r\n })\r\n slideWidth = !hasPic ? layWidth : attr.baseStyle.w + attr.baseStyle.l\r\n } else if (ele.type == 3) {\r\n // 视频\r\n let hasPic = attr.videoInfo.list.length != 0\r\n slideWidth = !hasPic ? layWidth : attr.baseStyle.w + attr.baseStyle.l\r\n } else {\r\n slideWidth = attr.baseStyle.w + attr.baseStyle.l\r\n }\r\n } else {\r\n // 若slide内暂无元素,默认使用父级slide的宽\r\n slideWidth = layWidth\r\n }\r\n this.$set(item, 'slideWidth', slideWidth)\r\n })\r\n this.$nextTick(()=> {\r\n this.initSwiper()\r\n })\r\n })\r\n },\r\n // 初始化轮播图\r\n initSwiper() {\r\n this.$nextTick(() => {\r\n if (this.swiper) {\r\n this.swiper.destroy(true, true)\r\n this.swiper = null\r\n }\r\n let { layOutData, widthStyle, ratio, slideLen } = this\r\n this.options = {\r\n effect: 'slide',\r\n observer: true, //开启动态检查器,监测swiper和slide\r\n observeParents: true,\r\n slidesPerView: (this.centeredSlides || widthStyle.type == 1) ? 'auto' : layOutData.lineSlideNum,\r\n preventInteractionOnTransition: true,\r\n slidesPerGroup: 1,\r\n slidesPerGroupAuto: true,\r\n centeredSlides: (this.centeredSlides || widthStyle.type == 1),\r\n // loop: layOutData.lineSlideNum < layOutData.slideNum ,\r\n spaceBetween: this.centeredSlides ? 0 * ratio : 0,\r\n autoplay:\r\n layOutData.autoPlay && this.list.length > 1\r\n ? {\r\n delay: layOutData.interval * 1000,\r\n disableOnInteraction: true,\r\n stopOnLastSlide: false,\r\n }\r\n : false,\r\n }\r\n\r\n if(widthStyle.type == 1) {\r\n this.options.loopedSlides = 4\r\n this.options.loopAdditionalSlides = 2\r\n }\r\n\r\n let that = this\r\n this.options.on = {\r\n slideNextTransitionEnd: function () {\r\n if(this.activeIndex == slideLen *2 ) {\r\n this.slideTo(slideLen, 0)\r\n }\r\n that.slideIndex = this.activeIndex\r\n },\r\n slidePrevTransitionEnd: function() {\r\n if(this.activeIndex == slideLen - 1 ) {\r\n this.slideTo(slideLen *2 - 1, 0)\r\n }\r\n }\r\n }\r\n\r\n // 导航按钮定义\r\n if (this.hasSwiperButton) {\r\n this.options.navigation = {\r\n nextEl: `.swiper-button-next-${this.recordId}`,\r\n prevEl: `.swiper-button-prev-${this.recordId}`,\r\n }\r\n }\r\n\r\n this.swiper = new Swiper(`.swiper-container-${this.recordId}`, this.options)\r\n this.swiper.slideTo(slideLen, 0)\r\n console.log('\\x1B[32m%s\\x1B[0m', '初始化轮播图', this.swiper)\r\n })\r\n },\r\n reportData(h) {\r\n let refs = this.$refs.slideSingle\r\n refs&&refs.forEach(item=>{\r\n item.reportData(h)\r\n })\r\n }\r\n },\r\n}\r\n","<template>\r\n <div\r\n class=\"slide-wrap\"\r\n :style=\"{ '--hoverColor': paginationStyle.hoverColor || paginationStyle.color, '--activeColor': paginationStyle.activeColor, '--color': paginationStyle.color }\">\r\n <div\r\n :class=\"[`swiper-container swiper-container-${recordId} swiper-container-${indicatorType}`]\"\r\n :id=\"`mySwiper-${recordId}`\"\r\n :key=\"indicatorType\">\r\n <div class=\"swiper-wrapper\">\r\n <div\r\n :class=\"['swiper-slide', {'slide-auto': widthStyle.type == 1 || centeredSlides}]\"\r\n v-for=\"(carousel, index) in slideList\"\r\n :key=\"index\">\r\n <div \r\n class=\"slide-con\" \r\n :style=\"[backStyle(carousel.i), {\r\n width: widthStyle.type == 1 ? `${carousel.slideWidth * ratio}px` : backStyle(carousel.i).width\r\n }]\">\r\n <singleLayout :ref=\"carousel.isCopy ? '':'slideSingle'\" v-bind=\"$attrs\" v-on=\"$listeners\" :layOutData=\"carousel\" :ratio=\"ratio\" :recordId=\"recordId\" :mode=\"mode\"></singleLayout>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- 如果需要导航按钮 -->\r\n <div :class=\"['swiper-button-prev', `swiper-button-prev-${recordId}`]\" v-if=\"hasSwiperButton\">\r\n <slot name=\"swiper-button-prev\">\r\n <div class=\"arrow\"><span :style=\"pageStyle\" class=\"cms2iconfont iconarrow-left\"></span></div>\r\n </slot>\r\n </div>\r\n <div :class=\"['swiper-button-next', `swiper-button-next-${recordId}`]\" v-if=\"hasSwiperButton\">\r\n <slot name=\"swiper-button-next\">\r\n <div class=\"arrow\"><span :style=\"pageStyle\" class=\"cms2iconfont iconarrow-right\"></span></div>\r\n </slot>\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n<script>\r\nimport slideLayoutJs from './slideLayout.js';\r\nexport default slideLayoutJs;\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n@import 'slideLayout';\r\n</style>","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./slideLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./slideLayout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./slideLayout.vue?vue&type=template&id=7095e299&scoped=true&\"\nimport script from \"./slideLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./slideLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./slideLayout.vue?vue&type=style&index=0&id=7095e299&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7095e299\",\n null\n \n)\n\nexport default component.exports","import slideLayout from './slideLayout.vue';\r\nexport default slideLayout;","// import draggable from 'vuedraggable'\r\nimport singleLayout from './singleLayout/'\r\nimport multipleLayout from './multipleLayout/'\r\nimport customLayout from './customLayout/'\r\nimport tabLayout from \"./tabLayout/\";\r\nimport slideLayout from './slideLayout/';\r\n\r\nexport default {\r\n name: 'cms',\r\n inheritAttrs: false,\r\n components: {\r\n // draggable,\r\n singleLayout, //单列布局\r\n multipleLayout, //多列布局\r\n customLayout, // 自定义\r\n tabLayout, // 导航\r\n slideLayout, // 滑动容器\r\n },\r\n props: {\r\n cmsList: {\r\n type: Array,\r\n default: () => []\r\n },\r\n canDrag: {\r\n type: Boolean,\r\n default: true\r\n },\r\n mode: {\r\n type: String,\r\n default: 'pc'\r\n },\r\n ratio: {\r\n type: Number,\r\n default: 1\r\n },\r\n envUrl: {\r\n type: String,\r\n default: ''\r\n },\r\n path: {\r\n type: String\r\n }\r\n },\r\n watch: {\r\n // cmsList: {\r\n // handler(val) {\r\n // console.log(val)\r\n // },\r\n // immediate: true\r\n // }\r\n },\r\n data() {\r\n return {\r\n chooseSort: '', //选中的元素标识\r\n activeIndex: -1, // 鼠标悬浮的元素位置\r\n layOutObj: {\r\n 1:'singleLayout',\r\n 2:'multipleLayout',\r\n 3:'customLayout',\r\n 4:'tabLayout',\r\n 5:'slideLayout'\r\n }\r\n }\r\n },\r\n computed: {\r\n },\r\n mounted() {\r\n this.$nextTick(()=>{\r\n var commom = require('../../utils/common')\r\n commom.scroll(this)\r\n commom.entrance(this)\r\n });\r\n },\r\n methods: {\r\n chooseLayout(layoutType, sort) {\r\n this.chooseSort = sort\r\n this.$emit('updateLayOut', { layoutType, sort})\r\n },\r\n updateSort(sort) {\r\n this.chooseSort = sort\r\n },\r\n // 删除布局组件\r\n deleteModule(index, sort) {\r\n // 若删除的为当前选中布局, 特殊处理\r\n if(sort === this.chooseSort) {\r\n this.$emit('deleteModule', index)\r\n } else {\r\n this.cmsList.splice(index, 1)\r\n this.$emit('saveVersionId')\r\n }\r\n },\r\n // 控制组件展示或隐藏\r\n showOrHide(index) {\r\n let item = this.cmsList[index]\r\n this.$set(item, 'displayType', item.displayType ? 0 : 1)\r\n this.$emit('componentChange', item.sort)\r\n },\r\n judgeSlot(index) {\r\n if(this.cmsList[index].attributeJson.componentList) {\r\n return this.cmsList[index].attributeJson.componentList.some(ele=> {return ele.type == 106})\r\n }\r\n }\r\n }\r\n}\r\n","<template>\r\n <div ref=\"cms\">\r\n <div\r\n :class=\"['lay-wrap', { mobile: mode == 'mobile' }]\"\r\n >\r\n <div\r\n class=\"lay-item\"\r\n v-for=\"(item, index) in cmsList\"\r\n :key=\"item.sort\"\r\n >\r\n <div\r\n class=\"layout-set\"\r\n :style=\"{\r\n width: item.attributeJson.layoutStyle && item.attributeJson.layoutStyle.widthStyle.type === 2 ? item.attributeJson.layoutStyle.widthStyle.width + '%' : '100%',\r\n height: item.attributeJson.layoutStyle ? Math.round(item.attributeJson.layoutStyle.height * ratio) + 'px' : 'auto'\r\n }\"\r\n >\r\n <component\r\n ref=\"layModule\"\r\n :is=\"layOutObj[item.layoutType]\"\r\n v-bind=\"$attrs\" \r\n v-on=\"$listeners\" \r\n :layOutData=\"item.attributeJson\" \r\n :sort=\"item.attributeJson.sort\" \r\n :ratio=\"ratio\" \r\n :mode=\"mode\" \r\n :recordId=\"item.originalId\" \r\n :envUrl=\"envUrl\"\r\n :path=\"path\"\r\n > \r\n <template v-if=\"item.layoutType === 3\" slot=\"customComponent\" slot-scope=\"scope\">\r\n <slot name=\"customComponent\" :attributeJson=\"scope.attributeJson\"></slot>\r\n </template>\r\n <template v-if=\"judgeSlot(index)\" slot=\"dgCustomComponent\">\r\n <slot name=\"dgCustomComponent\"></slot>\r\n </template>\r\n </component>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport cmsJs from \"./cms.js\";\r\nexport default cmsJs;\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n@import \"cms\";\r\n</style>\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./cms.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./cms.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./cms.vue?vue&type=template&id=7f82646d&scoped=true&\"\nimport script from \"./cms.vue?vue&type=script&lang=js&\"\nexport * from \"./cms.vue?vue&type=script&lang=js&\"\nimport style0 from \"./cms.vue?vue&type=style&index=0&id=7f82646d&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7f82646d\",\n null\n \n)\n\nexport default component.exports","import cms from './cms.vue'\r\nexport default cms","<template>\n\t<div id=\"app\">\n\t\t<cms\n\t\t\tref=\"cmsRef\"\n\t\t\t:cmsList=\"cmsList\"\n\t\t\t:canDrag=\"false\"\n\t\t\t:canDragInc=\"false\"\n\t\t\t:mode=\"mode\"\n\t\t\t:ratio=\"ratio\"\n\t\t\t:fontRatio=\"fontRatio\"\n\t\t\t:envUrl=\"envUrl\"\n\t\t\tv-bind=\"$attrs\"\n\t\t\tv-on=\"$listeners\"\n\t\t\t@jumpLink=\"jumpLink\"></cms>\n\t</div>\n</template>\n\n<script>\nimport cms from \"./components/cms/\";\nexport default {\n\tname: \"app\",\n\tcomponents: {\n\t\tcms,\n\t},\n\tdata() {\n\t\treturn {\n\t\t\tcmsList: [\n\t\t\t\t{\n\t\t\t\t\trecordId: 14786,\n\t\t\t\t\toriginalId: 4228,\n\t\t\t\t\tterminalId: 186,\n\t\t\t\t\tpageCode: \"1000\",\n\t\t\t\t\tversionAdapterType: 2,\n\t\t\t\t\tdecorationToolsVersion: \"V2\",\n\t\t\t\t\tcomponentCode: \"1\",\n\t\t\t\t\tcomponentVersion: \"\",\n\t\t\t\t\tcomponentSortNum: 1,\n\t\t\t\t\tattributeJson: {\n\t\t\t\t\t\tuniqueId: \"\",\n\t\t\t\t\t\tuniqueName: \"整行排列3\",\n\t\t\t\t\t\tcomponent: \"singleLayout\",\n\t\t\t\t\t\tlayoutStyle: {\n\t\t\t\t\t\t\twidthStyle: {\n\t\t\t\t\t\t\t\ttype: 1,\n\t\t\t\t\t\t\t\twidth: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\theight: \"400\",\n\t\t\t\t\t\t\tbgStyle: {\n\t\t\t\t\t\t\t\ttype: 1,\n\t\t\t\t\t\t\t\tbackgroundColor: \"\",\n\t\t\t\t\t\t\t\tpicList: [],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tcomponentList: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcomponentName: \"图片\",\n\t\t\t\t\t\t\t\tcomponent: \"imgNav\",\n\t\t\t\t\t\t\t\ttype: 2,\n\t\t\t\t\t\t\t\tdisplayType: 1,\n\t\t\t\t\t\t\t\tindicatorType: 1,\n\t\t\t\t\t\t\t\toneLineCount: 1,\n\t\t\t\t\t\t\t\tattributeJson: {\n\t\t\t\t\t\t\t\t\tuniqueId: \"\",\n\t\t\t\t\t\t\t\t\tuniqueName: \"基础图片0\",\n\t\t\t\t\t\t\t\t\tstyleType: 1,\n\t\t\t\t\t\t\t\t\tbaseStyle: {\n\t\t\t\t\t\t\t\t\t\tw: 750,\n\t\t\t\t\t\t\t\t\t\th: 417.8272980501393,\n\t\t\t\t\t\t\t\t\t\tl: \"0\",\n\t\t\t\t\t\t\t\t\t\tt: 0,\n\t\t\t\t\t\t\t\t\t\tisLocked: true,\n\t\t\t\t\t\t\t\t\t\tisCopy: false,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tpaddingSpacing: 0,\n\t\t\t\t\t\t\t\t\titemSpacing: 0,\n\t\t\t\t\t\t\t\t\tanimationInObj: {\n\t\t\t\t\t\t\t\t\t\ttype: \"\",\n\t\t\t\t\t\t\t\t\t\tdirection: \"slideInUp\",\n\t\t\t\t\t\t\t\t\t\tdelay: 0,\n\t\t\t\t\t\t\t\t\t\tduration: 1,\n\t\t\t\t\t\t\t\t\t\tsort: \"\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tanimationHoverObj: {\n\t\t\t\t\t\t\t\t\t\ttype: 1,\n\t\t\t\t\t\t\t\t\t\tborderStyle: {\n\t\t\t\t\t\t\t\t\t\t\ttype: 1,\n\t\t\t\t\t\t\t\t\t\t\tborderColor: \"#202832\",\n\t\t\t\t\t\t\t\t\t\t\tborderTop: \"\",\n\t\t\t\t\t\t\t\t\t\t\tborderRight: \"\",\n\t\t\t\t\t\t\t\t\t\t\tborderBottom: \"\",\n\t\t\t\t\t\t\t\t\t\t\tborderLeft: \"\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\thoverImgList: [],\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tlist: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tuniqueId: \"\",\n\t\t\t\t\t\t\t\t\t\t\tuniqueName: \"图片1\",\n\t\t\t\t\t\t\t\t\t\t\tpicList: [\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\trecordId: 7838,\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassificationId: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\tresourceStorageType: 3,\n\t\t\t\t\t\t\t\t\t\t\t\t\tresourceExtensionType: 1,\n\t\t\t\t\t\t\t\t\t\t\t\t\tresourceExtensionName: \".jpg\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tresourceName: \"10.jpg\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tresourceActualName:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"7c19bc3e-1685-4b21-b7c1-e3965537c44a.jpg\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tresourcePath:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"https://mpimg.ibaiqiu.cn/7c19bc3e-1685-4b21-b7c1-e3965537c44a.jpg\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tresourceCoverId: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\tresourceCoverPath: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tsummary: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tsize: 1098294,\n\t\t\t\t\t\t\t\t\t\t\t\t\twidth: 1077,\n\t\t\t\t\t\t\t\t\t\t\t\t\theight: 600,\n\t\t\t\t\t\t\t\t\t\t\t\t\tduration: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\tattributeJson: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tmd5Hashcode: \"db2ec544613c0dd65e7872dfa5e70301\",\n\t\t\t\t\t\t\t\t\t\t\t\t\twxAppId: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\twxMediaId: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tqnHashcode: \"Fk1P34qxO7A5vvrPGTmaPKXcds4M\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tresourceSource: \"MANAGEMENT_SYSTEM\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tshopCode: \"develop\",\n\t\t\t\t\t\t\t\t\t\t\t\t\ttenantCode: \"buying\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tdelFlg: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\tcreateTime: \"2023-06-12 17:03:41\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tcreateUser: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tupdateTime: \"2023-06-12 17:03:41\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tupdateUser: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\tpopList: [],\n\t\t\t\t\t\t\t\t\t\t\tsort: 1690877757803,\n\t\t\t\t\t\t\t\t\t\t\tpic: \"https://mpimg.ibaiqiu.cn/7c19bc3e-1685-4b21-b7c1-e3965537c44a.jpg\",\n\t\t\t\t\t\t\t\t\t\t\theight: 600,\n\t\t\t\t\t\t\t\t\t\t\twidth: 1077,\n\t\t\t\t\t\t\t\t\t\t\trealWidth: 750,\n\t\t\t\t\t\t\t\t\t\t\trealHeight: 417.8272980501393,\n\t\t\t\t\t\t\t\t\t\t\tleft: 0,\n\t\t\t\t\t\t\t\t\t\t\ttop: 0,\n\t\t\t\t\t\t\t\t\t\t\tisReport: true,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tsort: 1690877756435,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tsort: 1690877756435,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tsort: 1690877685978,\n\t\t\t\t\t},\n\t\t\t\t\tlanguageCode: \"zh-CN\",\n\t\t\t\t\tshopCode: \"develop\",\n\t\t\t\t\tdelFlg: 0,\n\t\t\t\t\tupdateTime: \"2023-08-02 10:15:20\",\n\t\t\t\t\tupdateId: \"\",\n\t\t\t\t\tcreateTime: \"2023-08-02 10:15:20\",\n\t\t\t\t\tcreateId: \"\",\n\t\t\t\t\tlayoutType: 1,\n\t\t\t\t\tsort: 1690877685978,\n\t\t\t\t\toriginalIdStr: \"4228_1690877685978\",\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\trecordId: 14787,\n\t\t\t\t\toriginalId: 4230,\n\t\t\t\t\tterminalId: 186,\n\t\t\t\t\tpageCode: \"1000\",\n\t\t\t\t\tversionAdapterType: 2,\n\t\t\t\t\tdecorationToolsVersion: \"V2\",\n\t\t\t\t\tcomponentCode: \"1\",\n\t\t\t\t\tcomponentVersion: \"\",\n\t\t\t\t\tcomponentSortNum: 3,\n\t\t\t\t\tattributeJson: {\n\t\t\t\t\t\tuniqueId: \"\",\n\t\t\t\t\t\tuniqueName: \"整行排列4\",\n\t\t\t\t\t\tcomponent: \"singleLayout\",\n\t\t\t\t\t\tlayoutStyle: {\n\t\t\t\t\t\t\twidthStyle: {\n\t\t\t\t\t\t\t\ttype: 1,\n\t\t\t\t\t\t\t\twidth: 100,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\theight: 1080,\n\t\t\t\t\t\t\tbgStyle: {\n\t\t\t\t\t\t\t\ttype: 1,\n\t\t\t\t\t\t\t\tbackgroundColor: \"\",\n\t\t\t\t\t\t\t\tpicList: [],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tcomponentList: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcomponentName: \"DG换一换\",\n\t\t\t\t\t\t\t\ttype: 106,\n\t\t\t\t\t\t\t\tdisplayType: 1,\n\t\t\t\t\t\t\t\tcomponent: \"latticeDG\",\n\t\t\t\t\t\t\t\tcomponentRight: \"latticeDGConfig\",\n\t\t\t\t\t\t\t\tentranceAnimateType: [\"\", \"fade\", \"scale\", \"slide\"],\n\t\t\t\t\t\t\t\tdataReportCode: 32,\n\t\t\t\t\t\t\t\tattributeJson: {\n\t\t\t\t\t\t\t\t\tuniqueId: \"\",\n\t\t\t\t\t\t\t\t\tuniqueName: \"基础DG换一换0\",\n\t\t\t\t\t\t\t\t\tbaseStyle: {\n\t\t\t\t\t\t\t\t\t\tw: 750,\n\t\t\t\t\t\t\t\t\t\th: 1040,\n\t\t\t\t\t\t\t\t\t\tl: \"0\",\n\t\t\t\t\t\t\t\t\t\tt: \"0\",\n\t\t\t\t\t\t\t\t\t\tisLocked: true,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\ttitle: \"ce \",\n\t\t\t\t\t\t\t\t\ttitleType: 2,\n\t\t\t\t\t\t\t\t\tbuttonImage:\n\t\t\t\t\t\t\t\t\t\t\"https://mpimg.ibaiqiu.cn/339ce7b9-641a-45ff-993a-9d41d7ad592c.jpeg\",\n\t\t\t\t\t\t\t\t\tbuttonPicList: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\trecordId: 7878,\n\t\t\t\t\t\t\t\t\t\t\tclassificationId: 0,\n\t\t\t\t\t\t\t\t\t\t\tresourceStorageType: 3,\n\t\t\t\t\t\t\t\t\t\t\tresourceExtensionType: 1,\n\t\t\t\t\t\t\t\t\t\t\tresourceExtensionName: \".jpeg\",\n\t\t\t\t\t\t\t\t\t\t\tresourceName: \"IM_LOGO黑色.jpeg\",\n\t\t\t\t\t\t\t\t\t\t\tresourceActualName:\n\t\t\t\t\t\t\t\t\t\t\t\t\"339ce7b9-641a-45ff-993a-9d41d7ad592c.jpeg\",\n\t\t\t\t\t\t\t\t\t\t\tresourcePath:\n\t\t\t\t\t\t\t\t\t\t\t\t\"https://mpimg.ibaiqiu.cn/339ce7b9-641a-45ff-993a-9d41d7ad592c.jpeg\",\n\t\t\t\t\t\t\t\t\t\t\tresourceCoverId: null,\n\t\t\t\t\t\t\t\t\t\t\tresourceCoverPath: \"\",\n\t\t\t\t\t\t\t\t\t\t\tsummary: \"\",\n\t\t\t\t\t\t\t\t\t\t\tsize: 52571,\n\t\t\t\t\t\t\t\t\t\t\twidth: 477,\n\t\t\t\t\t\t\t\t\t\t\theight: 104,\n\t\t\t\t\t\t\t\t\t\t\tduration: null,\n\t\t\t\t\t\t\t\t\t\t\tattributeJson: \"\",\n\t\t\t\t\t\t\t\t\t\t\tmd5Hashcode: \"9562500c6d629043f9a95416c401e4cb\",\n\t\t\t\t\t\t\t\t\t\t\twxAppId: \"\",\n\t\t\t\t\t\t\t\t\t\t\twxMediaId: \"\",\n\t\t\t\t\t\t\t\t\t\t\tqnHashcode: \"FodlQLs_Qv19pkkz7sHcRJOP-wzU\",\n\t\t\t\t\t\t\t\t\t\t\tresourceSource: \"MANAGEMENT_SYSTEM\",\n\t\t\t\t\t\t\t\t\t\t\tshopCode: \"develop\",\n\t\t\t\t\t\t\t\t\t\t\ttenantCode: \"buying\",\n\t\t\t\t\t\t\t\t\t\t\tdelFlg: 0,\n\t\t\t\t\t\t\t\t\t\t\tcreateTime: \"2023-07-05 11:43:07\",\n\t\t\t\t\t\t\t\t\t\t\tcreateUser: \"\",\n\t\t\t\t\t\t\t\t\t\t\tupdateTime: \"2023-07-05 11:43:07\",\n\t\t\t\t\t\t\t\t\t\t\tupdateUser: \"\",\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tlist: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tsort: 1690878776859,\n\t\t\t\t\t\t\t\t\t\t\tuniqueName: \"导航1\",\n\t\t\t\t\t\t\t\t\t\t\ttitle: \"e\",\n\t\t\t\t\t\t\t\t\t\t\timageType: 2,\n\t\t\t\t\t\t\t\t\t\t\tmatterList: [\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\tsort: 1690878796413,\n\t\t\t\t\t\t\t\t\t\t\t\t\tuniqueName: \"素材组1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tpicList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\tproductInfoList: [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcode: \"G8PV0TG7F2I\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcodeType: \"ITEM\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbrand: \"Dolce & Gabbana\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualBrand: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tname: \"Long-sleeved T-shirt with logo tag\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualName: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstandardPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toriginSalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsortNum: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdescription: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualDescription: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayStatus: 1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpulloffTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinStockStatus: \"--\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinventory: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpreSale: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tisGift: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tshopCode: \"develop\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttenantCode: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcmsColorVOList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmainPicUrl:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"https://img.ibaiqiu.com/applet-upload/1669720618-322-G8PV0TG7F2I-BLACK-1.png\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\titemStr: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatusStr: \"C端展示\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatus: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcode: \"CK1908AG085\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcodeType: \"ITEM\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbrand: \"Dolce & Gabbana\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualBrand: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tname: \"Daymaster 拼接材质运动鞋\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualName: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstandardPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toriginSalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsortNum: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdescription: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualDescription: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayStatus: 1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpulloffTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinStockStatus: \"--\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinventory: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpreSale: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tisGift: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tshopCode: \"develop\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttenantCode: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcmsColorVOList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmainPicUrl:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"https://img.ibaiqiu.com/applet-upload/1669720592-322-CK1908AG085-WHITE-1.png\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\titemStr: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatusStr: \"C端展示\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatus: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcode: \"GVRYATFUMQG\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcodeType: \"ITEM\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbrand: \"Dolce & Gabbana\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualBrand: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tname: \"标牌尼龙工装裤\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualName: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstandardPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toriginSalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsortNum: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdescription: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualDescription: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayStatus: 1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpulloffTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinStockStatus: \"--\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinventory: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpreSale: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tisGift: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tshopCode: \"develop\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttenantCode: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcmsColorVOList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmainPicUrl:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"https://img.ibaiqiu.com/applet-upload/1669720610-322-GVRYATFUMQG-BLACK-1.png\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\titemStr: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatusStr: \"C端展示\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatus: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcode: \"CQ0353A1016\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcodeType: \"ITEM\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbrand: \"Dolce & Gabbana\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualBrand: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tname: \"DEVOTION 纳帕皮革夹趾凉鞋\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualName: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstandardPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toriginSalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsortNum: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdescription: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualDescription: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayStatus: 1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpulloffTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinStockStatus: \"--\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinventory: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpreSale: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tisGift: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tshopCode: \"develop\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttenantCode: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcmsColorVOList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmainPicUrl:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"https://img.ibaiqiu.com/applet-upload/1669720601-322-CQ0353A1016-SILVER-1.png\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\titemStr: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatusStr: \"C端展示\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatus: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcode: \"CR1377A1037\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcodeType: \"ITEM\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbrand: \"Dolce & Gabbana\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualBrand: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tname: \"3.5 鞋跟亮泽小牛皮穆勒鞋\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualName: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstandardPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toriginSalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsortNum: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdescription: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualDescription: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayStatus: 1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpulloffTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinStockStatus: \"--\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinventory: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpreSale: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tisGift: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tshopCode: \"develop\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttenantCode: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcmsColorVOList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmainPicUrl:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"https://img.ibaiqiu.com/applet-upload/1669720594-322-CR1377A1037-BRIGHTGREEN-1.png\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\titemStr: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatusStr: \"C端展示\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatus: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcode: \"G036DTHUMQQ\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcodeType: \"ITEM\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbrand: \"Dolce & Gabbana\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualBrand: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tname: \"Double-breasted wool pea coat with branded tag\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualName: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstandardPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toriginSalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsortNum: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdescription: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualDescription: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayStatus: 1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpulloffTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinStockStatus: \"--\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinventory: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpreSale: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tisGift: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tshopCode: \"develop\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttenantCode: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcmsColorVOList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmainPicUrl:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"https://img.ibaiqiu.com/applet-upload/1669720599-322-G036DTHUMQQ-BLACK-1.png\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\titemStr: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatusStr: \"C端展示\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatus: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcode: \"CD1718AD455\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcodeType: \"ITEM\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbrand: \"Dolce & Gabbana\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualBrand: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tname: \"徽标印花小牛皮高跟鞋\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualName: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstandardPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toriginSalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsortNum: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdescription: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualDescription: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayStatus: 1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpulloffTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinStockStatus: \"--\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinventory: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpreSale: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tisGift: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tshopCode: \"develop\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttenantCode: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcmsColorVOList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmainPicUrl:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"https://img.ibaiqiu.com/applet-upload/1669720597-322-CD1718AD455-LOGO2 NERO F.BCO OTT-1.png\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\titemStr: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatusStr: \"C端展示\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatus: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcode: \"G8PT1TG7F2I\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcodeType: \"ITEM\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbrand: \"Dolce & Gabbana\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualBrand: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tname: \"Cotton T-shirt with branded tag\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualName: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstandardPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toriginSalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsortNum: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdescription: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualDescription: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayStatus: 1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpulloffTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinStockStatus: \"--\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinventory: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpreSale: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tisGift: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tshopCode: \"develop\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttenantCode: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcmsColorVOList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmainPicUrl:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"https://img.ibaiqiu.com/applet-upload/1669720608-322-G8PT1TG7F2I-BLACK-1.png\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\titemStr: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatusStr: \"C端展示\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatus: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcode: \"CG0505AQ130\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcodeType: \"ITEM\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tbrand: \"Dolce & Gabbana\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualBrand: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tname: \"DG Karol 鞋跟漆皮后系带鞋\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualName: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tstandardPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toriginSalesPrice: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsortNum: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdescription: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmultilingualDescription: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayStatus: 1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tsalesList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tputawayTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpulloffTimeStamp: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinStockStatus: \"--\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tinventory: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tpreSale: null,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tisGift: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tshopCode: \"develop\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttenantCode: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcmsColorVOList: [],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmainPicUrl:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"https://img.ibaiqiu.com/applet-upload/1669720605-322-CG0505AQ130-BLACK/GOLD-1.png\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\titemStr: \"\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatusStr: \"C端展示\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdisplayStatus: 0,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\tanimationInObj: {\n\t\t\t\t\t\t\t\t\t\ttype: \"\",\n\t\t\t\t\t\t\t\t\t\tdirection: \"slideInUp\",\n\t\t\t\t\t\t\t\t\t\tdelay: 0,\n\t\t\t\t\t\t\t\t\t\tduration: 1,\n\t\t\t\t\t\t\t\t\t\tsort: \"\",\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tanimationHoverObj: {},\n\t\t\t\t\t\t\t\t\tsort: 1690878775397,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tsort: 1690878775397,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\t\t\t\tsort: 1690878770835,\n\t\t\t\t\t},\n\t\t\t\t\tlanguageCode: \"zh-CN\",\n\t\t\t\t\tshopCode: \"develop\",\n\t\t\t\t\tdelFlg: 0,\n\t\t\t\t\tupdateTime: \"2023-08-02 10:15:20\",\n\t\t\t\t\tupdateId: \"\",\n\t\t\t\t\tcreateTime: \"2023-08-02 10:15:20\",\n\t\t\t\t\tcreateId: \"\",\n\t\t\t\t\tlayoutType: 1,\n\t\t\t\t\tsort: 1690878770835,\n\t\t\t\t\toriginalIdStr: \"4230_1690878770835\",\n\t\t\t\t}\n\t\t\t],\n\t\t\tratio: 1,\n\t\t\tfontRatio: 1,\n\t\t\tmode: \"pc\",\n\t\t\tenvUrl: \"https://mpdev.ibaiqiu.com/\",\n\t\t};\n\t},\n\tmounted() {},\n\tmethods: {\n\t\tonResize(e) {\n\t\t\tthis.ratio = e.width / (this.device == \"pc\" ? 1920 : 750);\n\t\t},\n\t\tjumpLink(e) {\n\t\t\tconsole.log(e, \"热区\");\n\t\t},\n\t},\n};\n</script>\n\n<style lang=\"scss\">\nbody {\n\tmargin: 0;\n}\n\n#app {\n\tfont-family: \"Avenir\", Helvetica, Arial, sans-serif;\n\t-webkit-font-smoothing: antialiased;\n\t-moz-osx-font-smoothing: grayscale;\n\ttext-align: center;\n\tcolor: #2c3e50;\n}\n\ndiv {\n\tbox-sizing: border-box;\n}\n</style>\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=3ed44a58&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\nimport App from './App.vue'\n\nVue.config.productionTip = false\n\nnew Vue({\n render: h => h(App),\n}).$mount('#app')\n","import mod from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./navItem.vue?vue&type=style&index=0&id=55eeeb47&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./navItem.vue?vue&type=style&index=0&id=55eeeb47&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./videoPlayer.vue?vue&type=style&index=0&id=41993973&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./videoPlayer.vue?vue&type=style&index=0&id=41993973&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./multipleLayout.vue?vue&type=style&index=0&id=8ff3e658&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./multipleLayout.vue?vue&type=style&index=0&id=8ff3e658&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./customLayout.vue?vue&type=style&index=0&id=1453938c&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./customLayout.vue?vue&type=style&index=0&id=1453938c&lang=scss&scoped=true&\"","module.exports = {\r\n entrance: function(that) {\r\n window.addEventListener('scroll', ()=>{this.scroll(that)})\r\n },\r\n scroll: function(that) {\r\n let h = document.documentElement.clientHeight || document.body.clientHeight\r\n let eles = document.querySelectorAll('.entrance-con')\r\n eles.forEach((item, index) => {\r\n let top = item.getBoundingClientRect().top\r\n if (top < h - 50 && item.firstChild.style.display == 'none') {\r\n item.classList.add('entrance-demonstrate') // 该样式主要为商品组件使用,因为商品接口返回会慢于该方法的执行,若将商品组件至于页面第一个,且添加了入场动画,会造成初始进入页面动画不执行,滑动一下才执行\r\n if(!(item.classList.contains('product-list')&&index == 0)) {\r\n item.firstChild.style.display = 'block'\r\n }\r\n }\r\n })\r\n\r\n let refs = that.$refs.layModule\r\n refs&&refs.forEach(item =>{\r\n item&&item.reportData(h)\r\n })\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./cms.vue?vue&type=style&index=0&id=7f82646d&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./cms.vue?vue&type=style&index=0&id=7f82646d&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./textItem.vue?vue&type=style&index=0&id=8ebee546&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./textItem.vue?vue&type=style&index=0&id=8ebee546&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./singleLayout.vue?vue&type=style&index=0&id=666a807e&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./singleLayout.vue?vue&type=style&index=0&id=666a807e&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buttonItem.vue?vue&type=style&index=0&id=572082d3&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buttonItem.vue?vue&type=style&index=0&id=572082d3&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./tabLayout.vue?vue&type=style&index=0&id=fed59a16&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./tabLayout.vue?vue&type=style&index=0&id=fed59a16&lang=scss&scoped=true&\""],"sourceRoot":""}
|