Browse Source

还原之前的请求方式

hangb 8 years ago
parent
commit
080b8ae2ae

+ 0 - 3
assets/scss/app.scss

@@ -9,8 +9,5 @@
 // reset style
 @import "reset.scss";
 
-// Iconfont
-@import "../font/iconfont.css";
-
 // Common style
 @import "common.scss";

+ 13 - 0
assets/scss/common.scss

@@ -343,4 +343,17 @@ div.el-tree-node__content{
 .dialog .el-dialog__body{
   padding: 0 !important;
 }
+/*查看*/
+.messageBoard .img-item .preview {
+  display: none;
+  position: absolute;
+  top: 27px;
+  right: 16px;
+  z-index: 1000;
+  color: #fff;
+}
+.messageBoard .img-item:hover .preview {
+  display: block;
+}
+
 

+ 4 - 6
components/common/buyOrCar/buyComponent.vue

@@ -6,8 +6,6 @@
 </template>
 
 <script>
-  import axios from '~/plugins/axios'
-  import {Message} from 'element-ui'
   export default {
     props: ['item'],
     methods: {
@@ -24,7 +22,7 @@
             // this.$emit('buyAction', [{uuid: item.uuid, batchCode: item.batchCode, number: item.minBuyQty}])
             if (isBuy) {
               // this.$store.dispatch('user/getBuyInfo', [{uuid: item.uuid, batchCode: item.batchCode, number: item.minBuyQty}])
-              axios.post('trade/order/buyNow', [{
+              this.$http.post('trade/order/buyNow', [{
                 uuid: this.item.uuid,
                 batchCode: this.item.batchCode,
                 number: this.item.minBuyQty
@@ -36,7 +34,7 @@
                 })
             } else {
               // this.$store.dispatch('user/addCar', {uuid: item.uuid, batchCode: item.batchCode, number: item.minBuyQty})
-              axios.post('trade/cart/add', {
+              this.$http.post('trade/cart/add', {
                 uuid: this.item.uuid,
                 batchCode: this.item.batchCode,
                 number: this.item.minBuyQty
@@ -44,12 +42,12 @@
                 .then(response => {
                   console.log(response.data)
                   if (response.data.success) {
-                    Message({
+                    this.$message({
                       message: '添加购物车成功',
                       type: 'success'
                     })
                   } else {
-                    Message.error(response.data.message)
+                    this.$message.error(response.data.message)
                     // console.log(response.data.message)
                   }
                 })

+ 16 - 2
components/common/image-upload/imageUpload.vue

@@ -8,9 +8,12 @@
       :on-success="uploadSuccess">
       <img src="/images/messageBoard/msg_uploadPic.png" alt="">
     </el-upload>
-    <el-dialog v-model="dialogVisible" size="tiny">
+    <el-dialog v-model="dialogVisible" size="tiny" id="preview">
       <img :src="dialogImageUrl" width="100%" alt="">
     </el-dialog>
+    <!--<div v-model="dialogVisible" size="tiny" id="preview">-->
+      <!--<img :src="dialogImageUrl" width="100%" alt="">-->
+    <!--</div>-->
   </div>
 </template>
 <script>
@@ -28,6 +31,9 @@
       handlePictureCardPreview (file) {
         this.dialogImageUrl = file.url
         this.dialogVisible = true
+        let preview = document.querySelector('.el-upload-list__item-preview')
+        preview.setAttribute('date-toggle', 'modal')
+        preview.setAttribute('date-target', '#preview')
       },
       uploadSuccess (response, file, fileList) {
         this.$emit('fileAction', file.url)
@@ -35,7 +41,7 @@
     }
   }
 </script>
-<style>
+<style scoped>
   input[type="file"] {
     display: none;
   }
@@ -82,7 +88,15 @@
     position: absolute;
     top: 3px;
     right: 3px;
+    /*top: 3px;*/
+    /*right: -30px;*/
   }
+  /*.el-icon-view{*/
+    /*display: none;*/
+  /*}*/
+  /*.el-upload-list__item-preview{*/
+    /*display: none;*/
+  /*}*/
   .el-upload-list__item-preview .el-icon-view {
     margin-right: 7px;
   }

+ 2 - 2
components/common/page/pageComponent.vue

@@ -1,5 +1,5 @@
 <template>
-  <div class="page-wrap">
+  <div class="page-wrap" v-if="total/1.0/pageSize>1">
     <el-pagination
       :current-page.sync="current"
       :page-size="pageSize"
@@ -8,7 +8,7 @@
       @current-change="handleCurrentChange"
       v-if="total/pageSize>=1">
     </el-pagination>
-    <ul v-if="total/pageSize>=1" class="pagination" style="float:right;margin-left:20px;">
+    <ul class="pagination" style="float:right;margin-left:20px;">
         <li>
           <input type="text" class="page-number" v-model="nowPage">
         </li>

+ 3 - 4
components/default/RightBar.vue

@@ -72,7 +72,6 @@
   </div>
 </template>
 <script>
-  import axios from '~/plugins/axios'
   import { scrollTo } from '~utils/scroll'
   import MessageBoard from '~components/messageBoard/MessageBoard.vue'
   export default {
@@ -185,14 +184,14 @@
           // 获得窗口的水平位置
           let iLeft = (window.screen.availWidth - 10 - 1030) / 2
           let newTab = window.open('', '即时对话框', 'height=600, width=1030, top=' + iTop + ', left=' + iLeft + ', toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no')
-          axios.get('/basic/enterprise/' + this.enterprise.uu + '/info')
+          this.$http.get('/basic/enterprise/' + this.enterprise.uu + '/info')
             .then(response => {
               let obj = {}
               obj.enUU = response.data.uu
               obj.enterprise = {enUU: response.data.uu, name: response.data.enName}
               obj.type = 'LIST'
               obj.userPhone = this.user.data.userTel
-              axios.post('http://im.ubtob.com/api/chat/infos?condition=chat_info', obj)
+              this.$http.post('http://im.ubtob.com/api/chat/infos?condition=chat_info', obj)
                 .then(response => {
                   if (response.data.success) {
                     newTab.location.href = 'http://im.ubtob.com/chat/visit?gid=' + response.data.content
@@ -205,7 +204,7 @@
       },
       getChatCount: function () {
         if (this.user.logged) {
-          axios.get('http://im.ubtob.com/api/chat/message', {params: {enUU: this.enterprise.uu, operate: 'count_unread', phone: this.user.data.userTel}})
+          this.$http.get('http://im.ubtob.com/api/chat/message', {params: {enUU: this.enterprise.uu, operate: 'count_unread', phone: this.user.data.userTel}})
             .then(response => {
               this.chatCount = response.data.count
             })

+ 2 - 2
components/help/left.vue

@@ -53,8 +53,8 @@
     }
   }
 </script>
-<style>
-   .el-tree{
+<style scoped>
+  .el-tree{
     border: none;
      min-height: 300px;
   }

+ 5 - 6
components/messageBoard/MessageBoard.vue

@@ -135,7 +135,6 @@
 <script>
   import ImageUpload from '~components/common/image-upload/imageUpload.vue'
   import PageComponent from '~components/common/page/pageComponent.vue'
-  import {Message} from 'element-ui'
   export default {
     name: 'messageBoard',
     data () {
@@ -222,19 +221,19 @@
         this.$store.dispatch('uploadMessageBoardInformation', {question: this.messageBoard.question, role: this.messageBoard.role, submitTitle: '【优软商城】IC电子元器件现货采购交易平台商城', submitUrl: window.location.href, type: this.messageBoard.type, imgs: this.dialogImageUrl, userTel: '13333333333'})
         if (this.messageBoard) {
           if (!this.messageBoard.question) {
-            Message.info('您还没有填写反馈内容')
+            this.$message.info('您还没有填写反馈内容')
           } else if (!this.messageBoard.role) {
-            Message.info('请选择您的身份信息')
+            this.$message.info('请选择您的身份信息')
           } else if (!this.messageBoard.type) {
-            Message.info('请选择一种反馈类型')
+            this.$message.info('请选择一种反馈类型')
           } else if (!this.user) {
             if (!this.messageBoard.userTel && !this.messageBoard.email) {
-              Message.info('请填写任意一种联系方式')
+              this.$message.info('请填写任意一种联系方式')
             }
           } else {
             this.$store.dispatch('uploadMessageBoardInformation', {question: this.messageBoard.question, role: this.messageBoard.role, submitTitle: '【优软商城】IC电子元器件现货采购交易平台商城', submitUrl: window.location.href, type: this.messageBoard.type, imgs: this.dialogImageUrl, userTel: '13333333333'})
             this.isOpendMessage()
-            Message.info('感谢您的宝贵意见')
+            this.$message.info('感谢您的宝贵意见')
 //            window.location.reload()
             this.messageBoard = {}
           }

+ 1 - 1
components/product/CategoryNav.vue

@@ -30,7 +30,7 @@
   }
 </script>
 
-<style>
+<style scoped>
   /* breadcrumbs */
   .breadcrumbs {
     margin-top: 20px;

+ 4 - 4
components/product/ComponentGoods.vue

@@ -24,12 +24,12 @@
       <tr v-for="compGoods in componentGoods.content">
         <td>
           <!--store/{{compGoods.storeId}}#/batchInfo/{{compGoods.batchCode}}-->
-          <a v-if="compGoods.batchCode" href="#">
+          <nuxt-link v-if="compGoods.batchCode" :to="`/product/component/${compGoods.uuid}`">
             <img :src="compGoods.img || '/images/all/default.png'"/>
-          </a>
+          </nuxt-link>
           <img v-if="!compGoods.batchCode" :src="compGoods.img || '/images/all/default.png'"/>
           <!--store/{{compGoods.storeId}}#/home-->
-          <a href="#" class="contact" :title="compGoods.storeName">{{compGoods.storeName}}</a>
+          <nuxt-link :to="'/store/' + compGoods.storeId" class="contact" :title="compGoods.storeName">{{compGoods.storeName}}</nuxt-link>
         </td>
         <td class="brand-code">
           <div class="brand"><nuxt-link :to="`/product/brand/${compGoods.brand.uuid}/`" title="compGoods.brand.nameEn">{{compGoods.brand.nameEn}}</nuxt-link></div>
@@ -173,7 +173,7 @@
   }
 </script>
 
-<style>
+<style scoped>
   .product-list{
     width: 1190px;
     margin-bottom: 20px;

+ 0 - 1
components/product/Recommends.vue

@@ -93,7 +93,6 @@
     max-width: 200px;
   }
   #recommends .recommend-list .recommend .content {
-    font-family: "Microsoft Yahei";
     margin: 0 10px;
     height: 108px;
     text-align: left;

+ 0 - 1
components/provider/ExcellentSuppliers.vue

@@ -87,7 +87,6 @@ export default {
 
 	.marketing .title {
 		font-size: 24px;
-		font-family: "Microsoft Yahei", "微软雅黑";
 		line-height: 60px;
 		height: 60px;
 		font-weight: inherit;

+ 41 - 42
components/provider/HotCommodity.vue

@@ -36,50 +36,49 @@ export default {
   }
 
   .hot-commodity .hot-commodity-box {
-		width: 238px;
-		height: 239px;
-		border-top: 1px solid #D6D3CE;
-		border-left: 1px solid #D6D3CE;
-		overflow: hidden;
-	}
+    width: 238px;
+    height: 239px;
+    border-top: 1px solid #D6D3CE;
+    border-left: 1px solid #D6D3CE;
+    overflow: hidden;
+  }
 
-	.hot-commodity > ul > li {
-		/*float: left;*/
-	}
-	.hot-commodity > ul > li:hover{
-		border: #5078cb 1px solid;
-	}
-	.hot-commodity > ul > li:hover span{
-		color: #5078cb;
-		font-weight: bold;
-	}
-	.hot-commodity > ul > li:hover img{
-		transform: scale(1.1);
-	}
-	.hot-commodity ul {
-		border-bottom: 1px solid #D6D3CE;
-		font-size: 0px;
-	}
+  .hot-commodity > ul > li {
+    /*float: left;*/
+  }
+  .hot-commodity > ul > li:hover{
+    border: #5078cb 1px solid;
+  }
+  .hot-commodity > ul > li:hover span{
+    color: #5078cb;
+    font-weight: bold;
+  }
+  .hot-commodity > ul > li:hover img{
+    transform: scale(1.1);
+  }
+  .hot-commodity ul {
+    border-bottom: 1px solid #D6D3CE;
+    font-size: 0px;
+  }
 
-	.hot-commodity-box img {
-		width: 238px;
-		height: 180px;
-		margin-top: 10px;
-	}
+  .hot-commodity-box img {
+    width: 238px;
+    height: 180px;
+    margin-top: 10px;
+  }
 
-	.hot-commodity-box span {
-		font-size: 14px;
-		font-family: "Microsoft Yahei", "微软雅黑";
-		color: #333434;
-		text-align: center;
-		display: inline-block;
-		width: 100%;
-		height: 30px;
-		line-height: 30px;
-		margin-top: 12px;
-	}
+  .hot-commodity-box span {
+    font-size: 14px;
+    color: #333434;
+    text-align: center;
+    display: inline-block;
+    width: 100%;
+    height: 30px;
+    line-height: 30px;
+    margin-top: 12px;
+  }
 
-	.hot-commodity .border-right {
-		border-right: 1px solid #D6D3CE;
-	}
+  .hot-commodity .border-right {
+    border-right: 1px solid #D6D3CE;
+  }
 </style>

+ 0 - 1
components/provider/SalesRank.vue

@@ -20,7 +20,6 @@
   </div>
 </template>
 <script>
-
 export default {
   name: 'sales-rank',
   computed: {

+ 7 - 11
components/provider/Suppliers.vue

@@ -46,21 +46,19 @@
       </tbody>
     </table>
     <div style="float: right;">
-      <el-pagination
-        :current-page.sync="pageParams.page"
-        :page-size="pageParams.count"
-        layout="prev, pager, next, jumper"
-        :total="stores.totalElements"
-        @current-change="handleCurrentChange">
-      </el-pagination>
+      <page :total="stores.totalElements" :page-size="pageParams.count"
+            :current="pageParams.page" v-on:childEvent="handleCurrentChange"></page>
     </div>
   </div>
 </template>
 <script>
-
+import Page from '~components/common/page/pageComponent.vue'
 export default {
   name: 'suppliers',
   props: ['types'],
+  components: {
+    Page
+  },
   data () {
     return {
       keyword: '',
@@ -108,7 +106,7 @@ export default {
   }
 }
 </script>
-<style>
+<style scoped>
   .el-pagination .el-pager li.active{
     background-color: #5078cb;
     border-color: #337ab7;
@@ -138,7 +136,6 @@ export default {
 
 	#store-list .text-message {
 		color: rgb(80,120,203);
-		font-family: "Microsoft Yahei";
 	}
 
 	#store-list .btn-primary {
@@ -171,7 +168,6 @@ export default {
 	}
 
 	#store-list table>tbody .text-point {
-		font-family: "Microsoft Yahei", "微软雅黑";
 		color: #ff3737;
 		font-weight: 600;
 	}

+ 12 - 16
components/store/CommodityInfo.vue

@@ -61,7 +61,7 @@
               <span class="name">数&nbsp;量</span>:
               <div class="input-group" style="width: 120px">
                 <div class="input-group-addon operate" @click="subNum()" :disabled="!fragment.canAdd">-</div>
-                <input type="text" class="form-control" placeholder="数量" v-model="fragment.num" @change="inputNum()"/>
+                <input type="text" class="form-control" placeholder="数量" v-model="fragment.num" @change="inputNum()"style="padding: 0;min-width: 100px;text-align: center;"/>
                 <div class="input-group-addon operate" @click="addNum()" :disabled="!fragment.canSub">+</div>
               </div>
               ×
@@ -136,8 +136,6 @@ function initFragment (commodity) {
   }
   return fragment
 }
-import axios from '~/plugins/axios'
-import {Message} from 'element-ui'
 function getFragment (commodity, fragment) {
   // 判断是否小于第一分段的起订量
   if (commodity.prices[0].start > fragment.num) {
@@ -238,7 +236,7 @@ export default {
           // this.$emit('buyAction', [{uuid: item.uuid, batchCode: item.batchCode, number: item.minBuyQty}])
           if (isBuy) {
             // this.$store.dispatch('user/getBuyInfo', [{uuid: item.uuid, batchCode: item.batchCode, number: item.minBuyQty}])
-            axios.post('trade/order/buyNow', [{uuid: item.uuid, batchCode: item.batchCode, number: this.fragment.num}])
+            this.$http.post('trade/order/buyNow', [{uuid: item.uuid, batchCode: item.batchCode, number: this.fragment.num}])
               .then(response => {
                 window.location.href = '/user#/order/pay/' + this.enidfilter(response.data.orderid)
               }, err => {
@@ -251,16 +249,16 @@ export default {
               })
           } else {
             // this.$store.dispatch('user/addCar', {uuid: item.uuid, batchCode: item.batchCode, number: item.minBuyQty})
-            axios.post('trade/cart/add', {uuid: item.uuid, batchCode: item.batchCode, number: this.fragment.num})
+            this.$http.post('trade/cart/add', {uuid: item.uuid, batchCode: item.batchCode, number: this.fragment.num})
               .then(response => {
                 console.log(response.data)
                 if (response.data.success) {
-                  Message({
+                  this.$message({
                     message: '添加购物车成功',
                     type: 'success'
                   })
                 } else {
-                  Message.error(response.data.message)
+                  this.$message.error(response.data.message)
                   // console.log(response.data.message)
                 }
               })
@@ -342,14 +340,13 @@ export default {
 <style scoped>
   .container.commodity {
 		width: 1190px;
-		padding-left: 0px;
-		padding-right: 0px;
-		font-family: "Microsoft Yahei", "微软雅黑";
+		padding-left: 0;
+		padding-right: 0;
 	}
 	.commodity .commodity-detail {
 		width: 100%;
 		display: inline-block;
-		font-size: 0px;
+		font-size: 0;
 	}
 
 	.commodity-detail .img{
@@ -386,7 +383,6 @@ export default {
 
 	.commodity-detail .content .com-info {
 		font-size: 14px;
-		font-family: "Microsoft Yahei", "微软雅黑";
 		line-height: 26px;
 	}
 
@@ -403,13 +399,13 @@ export default {
 	}
 
 	.input-group .input-group-operate:last-child {
-		border-bottom-left-radius: 0px;
-		border-top-left-radius: 0px;
+		border-bottom-left-radius: 0;
+		border-top-left-radius: 0;
 	}
 
 	.input-group .input-group-operate:first-child {
-		border-bottom-right-radius: 0px;
-		border-top-right-radius: 0px;
+		border-bottom-right-radius: 0;
+		border-top-right-radius: 0;
 	}
 
 	.content .com-info .name {

+ 1 - 1
components/store/ComponentInfo.vue

@@ -4,7 +4,7 @@
       <div class="head">
         <span class="tab">产品参数<b class="tip">(仅供参考,以实际产品为准)</b></span>
       </div>
-      <ul class="list-unstyled list-inline" v-if="component.properties">
+      <ul class="list-unstyled list-inline" style="margin-left: 0px;" v-if="component.properties">
         <li v-for="property in component.properties" v-if="property.value">
           <div class="property-name">
             <span v-text="property.property.labelCn"></span>:

+ 3 - 4
components/store/RecommendProduct.vue

@@ -29,7 +29,6 @@
 <script>
   import Buy from '~components/common/buyOrCar/buyComponent.vue'
   import axios from '~/plugins/axios'
-  import {Message} from 'element-ui'
   export default {
     name: 'recommend-product',
     components: {
@@ -60,7 +59,7 @@
                 .then(response => {
                   window.location.href = '/user#/order/pay/' + this.enidfilter(response.data.orderid)
                 }, err => {
-                  Message.error('以下器件null对应的商品不存在,请您重新选择')
+                  this.$message.error('以下器件null对应的商品不存在,请您重新选择')
                   console.log(err)
                 })
             } else {
@@ -69,12 +68,12 @@
                 .then(response => {
                   console.log(response.data)
                   if (response.data.success) {
-                    Message({
+                    this.$message({
                       message: '添加购物车成功',
                       type: 'success'
                     })
                   } else {
-                    Message.error(response.data.message)
+                    this.$message.error(response.data.message)
                     // console.log(response.data.message)
                   }
                 })

+ 0 - 7
components/store/common/StoreHeader.vue

@@ -67,7 +67,6 @@
 </template>
 <script>
 import SearchBox from '~components/main/Search.vue'
-
 export default {
   name: 'store-header',
   data () {
@@ -125,9 +124,6 @@ export default {
 }
 </script>
 <style scoped>
-  body{
-		font-family: "Microsoft Yahei", "微软雅黑";
-	}
   .header-text {
     text-align: center;
     font-size: 20px;
@@ -201,7 +197,6 @@ export default {
 	#nav_fragment #search_input {
 		height: 40px;
 		font-size: 16px;
-		font-family: '微软雅黑';
 		border: 2px solid #5078cb;
 		border-top-left-radius: 0px;
 		border-bottom-left-radius: 0px;
@@ -329,7 +324,6 @@ export default {
 
 	#nav_fragment .hot-search .resources {
 		font-size: 12px;
-		font-family: "Microsoft Yahei", "微软雅黑";
 		color: rgb(250,50,50);
 	}
 
@@ -378,7 +372,6 @@ export default {
 		padding: 0 15px;
 		line-height: 30px;
 		text-align: left;
-		font-family: "Microsoft Yahei";
 	}
 
 	#search-group .association li:hover {

+ 14 - 12
nuxt.config.js

@@ -20,7 +20,11 @@ module.exports = {
       { hid: 'description', name: 'description', content: '优软商城(usoftmall.com)是中国领先的IC电子元器件现货采购交易网上商城,提供上千万种电子元器件现货采购交易,采购电子元器件就上优软商城!' }
     ],
     link: [
-      { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }
+      { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' },
+      { rel: 'stylesheet', type: 'text/css', href: 'https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css' },
+      { rel: 'stylesheet', type: 'text/css', href: 'https://cdn.bootcss.com/font-awesome/4.7.0/css/font-awesome.min.css' },
+      { rel: 'stylesheet', type: 'text/css', href: 'https://cdn.bootcss.com/element-ui/1.3.7/theme-default/index.css' },
+      { rel: 'stylesheet', type: 'text/css', href: 'https://at.alicdn.com/t/font_0d1jjt5tukcblnmi.css' }
     ]
   },
   /*
@@ -72,18 +76,16 @@ module.exports = {
       })
     ]
   },
-  css: [ {
-    src: 'bootstrap/dist/css/bootstrap.css'
-  }, {
+  css: [
+    /* {
     src: 'font-awesome/css/font-awesome.css'
-  }, {
-    src: '~assets/scss/app.scss',
-    lang: 'scss'
-  }, {
-    src: 'swiper/dist/css/swiper.css'
-  }, {
-    src: 'element-ui/lib/theme-default/index.css'
-  }],
+  }, */{src: '~assets/scss/app.scss', lang: 'scss'},
+    {
+      src: 'swiper/dist/css/swiper.css'
+    }  /*, {
+      src: 'element-ui/lib/theme-default/index.css'
+    } */
+  ],
   dev: !isProdMode,
   env: {
     baseUrl

+ 2 - 2
pages/help/helpList/_id.vue

@@ -38,8 +38,8 @@
   // 升序
   function compare (propertyName) {
     return function (object1, object2) {
-      var value1 = object1[propertyName]
-      var value2 = object2[propertyName]
+      let value1 = object1[propertyName]
+      let value2 = object2[propertyName]
       if (value1 > value2) {
         return 1
       } else if (value1 < value2) {

+ 3 - 1
plugins/element-ui.js

@@ -1,5 +1,5 @@
 import Vue from 'vue'
-import { Breadcrumb, BreadcrumbItem, Tree, Pagination, Upload, Dialog } from 'element-ui'
+import { Message, Breadcrumb, BreadcrumbItem, Tree, Pagination, Upload, Dialog } from 'element-ui'
 
 Vue.use(Breadcrumb)
 Vue.use(BreadcrumbItem)
@@ -7,3 +7,5 @@ Vue.use(Tree)
 Vue.use(Pagination)
 Vue.use(Upload)
 Vue.use(Dialog)
+
+Vue.prototype.$message = Message

+ 1 - 1
store/shop.js

@@ -33,7 +33,7 @@ export const actions = {
     commit('recommend/REQUEST_PRODUCTS')
     return axios.get('/api/store/recommend/products', { params })
       .then(response => {
-        commit('recommend/GET_PRODUCTS_SUCCESS', response.data ? JSON.parse(response.data) : [])
+        commit('recommend/GET_PRODUCTS_SUCCESS', response.data ? JSON.parse(JSON.stringify(response.data)) : [])
       }, err => {
         commit('recommend/GET_PRODUCTS_FAILURE', err)
       })