浏览代码

feat:修改bug,修改未登录态的样式

xzh 4 年之前
父节点
当前提交
600dd1e011

二进制
mobile/src/assets/images/refactor/coreProduct/banner.png


二进制
mobile/src/assets/images/refactor/home/plate01-img@2x.png


+ 1 - 1
mobile/src/pages/account/manage/device/index.vue

@@ -370,7 +370,7 @@ $theme-color: #1fe4dc;
           background-color: #202020;
           border-radius: 50%;
           position: relative;
-          margin-left: 10px;
+          margin: 0px 10px;
           &::after,&::before{
             content: '';
             position: absolute;

+ 1 - 1
mobile/src/pages/account/manage/information/index.vue

@@ -80,7 +80,7 @@
           <div class="info" :class="{'info-en':language==='en'}" slot="show">
             <div class="s-tx">
               <p>{{langAccount.avatar}}</p>
-              <div class="card-img avatar" :style="{backgroundImage: `url(${info.head})`}"></div>
+              <div v-if="info.head" class="card-img avatar" :style="{backgroundImage: `url(${info.head})`}"></div>
             </div>
             <p><span>{{langAccount.account}}</span><span>{{info.userName||'--'}}</span></p>
             <p><span>{{langAccount.nickname}}</span><span>{{info.nickName||'--'}}</span></p>

+ 5 - 5
mobile/src/pages/account/manage/information/style.scss

@@ -143,19 +143,19 @@ input {
           font-size: 10px;
         }
       }
-      .btn{
+      .btn {
         background: $theme-color;
         color: #000000;
         display: inline-block;
         min-width: 85px;
         text-align: center;
-        height: 25px;
-        line-height: 25px;
         border-radius: 6px;
         font-weight: bold;
         flex-shrink: 0;
         margin-left: 10px;
-        padding: 0 5px;
+        font-size: 12px;
+        line-height: 1;
+        padding: 6px 5px 6px;
       }
     }
   }
@@ -186,7 +186,7 @@ input {
       margin: 0;
       background-size: cover;
       background-repeat: no-repeat;
-
+      border-radius: 50%;
     }
     .nickname {
       width: 250px;

+ 1 - 1
mobile/src/pages/coreProduct/index.vue

@@ -91,7 +91,7 @@ export default {
     background: #D4D4D4;
     flex-direction: column;
     justify-content: center;
-    background: url(~@/assets/images/refactor/coreProduct/banner.jpg);
+    background: url(~@/assets/images/refactor/coreProduct/banner.png);
     background-size: cover;
     h4 {
       font-size: 16px;

+ 1 - 1
mobile/src/pages/home/index.vue

@@ -6,7 +6,7 @@
     </div>
     <div class="plate01">
       <p class="plate01-title" v-html="$t('home.bannerText')"></p>
-      <img class="p1_bg" src="@/assets/images/refactor/home/plate01-img@2x.png" alt="">
+      <img class="p1_bg" src="@/assets/images/refactor/home/plate01-img@2x.png?t=1" alt="">
       <div class="bottom">
         <div @click="showDetailVideo" class="btn-player">
           <img src="@/assets/images/refactor/home/playBtn.png" alt="">

+ 3 - 3
mobile/src/pages/introduce/style.scss

@@ -60,13 +60,13 @@
       display: inline-block;
       min-width: 85px;
       text-align: center;
-      height: 25px;
-      line-height: 25px;
+      line-height: 1;
       border-radius: 6px;
       font-weight: bold;
       flex-shrink: 0;
       margin-left: 10px;
-      padding: 0 5px;
+      font-size: 12px;
+      padding: 6px 0;
     }
   }
   .it-txt{

+ 1 - 1
mobile/src/pages/layout/header.vue

@@ -19,7 +19,7 @@
     </div>
     <div class="h-right">
       <div class="h-user"  v-if="isAccout||isLogin">
-          <i class="iconfont icon-cart" :style="{opacity:language==='en'?0:1}" @click="gocart"><span>{{count>99?'99+':count}}</span></i>
+          <i class="iconfont icon-cart" :style="{opacity:language==='en'?0:1}" @click="gocart"><span v-if="count">{{count>99?'99+':count}}</span></i>
           <img ref="userList" v-if="!info.head" :src="`${$cdn}images/icon/nav_icon.png`" @click="userList=!userList,active = false" alt="">
           <div ref="userList" v-else :style="{'background-image': `url(${info.head})`}" @click="userList=!userList,active = false" alt="" class="user-avatar" />
           <ul  :class="{'ul-active':userList, 'isEn': language==='en'}" >

+ 9 - 3
mobile/src/pages/purchase/index.vue

@@ -63,8 +63,8 @@
           <li v-for="item in videoArr" :key="item.name">
             <h1 class="common-title" v-html="item.name"></h1>
             <div class="player">
-              <video class="video" controls="controls" playsinline="playsinline" muted="muted" :poster="`${$cdn}images/postv${item.post}.png`">
-                <source :src="`${$cdn}video/homevideo/v${item.img}.mp4`" type="video/mp4">
+              <video class="video" controls="controls" playsinline="playsinline" muted="muted" :poster="isNaN(item.post) ? `${$cdn}video/homevideo/v${item.img}.mp4${item.post}` : `${$cdn}images/postv${item.post}.png`">
+                <source :src="`${$cdn}video/homevideo/v${language === 'zh' ? item.img:item.enImg}.mp4`" type="video/mp4">
               </video>
             </div>
           </li>
@@ -208,36 +208,42 @@ export default {
           name: i18n.t('conduct.coreProduct.itemTitle1'),
           img: 1,
           post: 1,
+          enImg: '1en',
           runAnimation: true
         },
         {
           name: i18n.t('conduct.coreProduct.itemTitle2'),
           img: 2,
           post: 2,
+          enImg: '2',
           runAnimation: true
         },
         {
           name: i18n.t('conduct.coreProduct.itemTitle4'),
           img: 6,
-          post: 6,
+          enImg: '6',
+          post: '?x-oss-process=video/snapshot,t_100,f_jpg,m_fast',
           runAnimation: true
         },
         {
           name: i18n.t('conduct.coreProduct.itemTitle5'),
           img: 3,
           post: 3,
+          enImg: '3en',
           runAnimation: true
         },
         {
           name: i18n.t('conduct.coreProduct.itemTitle6'),
           img: 4,
           post: 4,
+          enImg: '4',
           runAnimation: true
         },
         {
           name: i18n.t('conduct.coreProduct.itemTitle7'),
           img: 5,
           post: 5,
+          enImg: '5en',
           runAnimation: true
         }
       ]

+ 1 - 1
pc/src/components/browse/style.scss

@@ -15,7 +15,7 @@
       width: 100%;
     }
     video{
-      width: 130%;
+      width: 500px;
     }
   }
   ul{

+ 1 - 1
pc/src/components/mall/number.vue

@@ -52,7 +52,6 @@ export default {
       this.$emit('reduce')
     }
   }
-
 }
 </script>
 
@@ -71,6 +70,7 @@ export default {
   font-weight: bold;
   color: #909090;
   vertical-align: middle;
+  line-height: 26px;
 }
 input {
   border: none;

+ 0 - 1
pc/src/components/toast/index.vue

@@ -122,7 +122,6 @@ export default {
       this.comfirmtxt = this.lang === 'en' ? 'OK' : '确定'
     },
     localStorage: function (newVal) {
-      console.log(newVal)
     }
   },
   mounted () {

+ 1 - 1
pc/src/lang/zh/modules/service.js

@@ -5,6 +5,6 @@ module.exports = {
     "app": "APP下载",
     "clause": "保修条款",
     appDownload: {
-      downloadTip: '使用四维看看Pro的过程中,需要下载APP控制相机。请在手机软件商店搜索【四维看看Pro】或扫描下方二维码完成安装。'
+      downloadTip: '使用四维看看Pro的过程中,需要下载APP控制相机。请在手机软件商店搜索【四维看看Pro】或扫描下方二维码完成安装。'
     }
 }

+ 1 - 1
pc/src/main.js

@@ -21,7 +21,7 @@ Vue.prototype.$http = axios
 // Vue.prototype.$serverName = 'http://192.168.0.10:8080/'
 // Vue.prototype.$serverName = 'https://www.4dkankan.com/'
 
-Vue.prototype.$serverName = 'https://4dkankan.com'
+Vue.prototype.$serverName = 'https://test.4dkankan.com'
 
 Vue.config.productionTip = false
 

+ 45 - 5
pc/src/page/about/index.vue

@@ -22,14 +22,24 @@
         <div class="plate03 plate01" >
           
         <div class="event plate">
-          <touch class="touch-layout" :iactive='iactive' :data="imgs" :width="360" :loop="3000">
+          <swiper class="touch-layout" :options="swiperOption" ref="mySwiper">
+            <!-- slides -->
+            <swiper-slide v-for="(item, index) in imgs" :key="index" class="swiper-item">
+              <div class="banner-bg" :style="{'background-image': `url(${item.img})`}"></div>
+            </swiper-slide>
+            <!-- Optional controls -->
+          </swiper>
+          <ul class="ban" >
+            <span @click="slide(i)" v-for="(item, i) in imgs" :key="i" :class="{active: i === iactive}"></span>
+          </ul>
+          <!-- <touch class="touch-layout" :iactive='iactive' :data="imgs" :width="360" :loop="3000">
             <div class="item" slot="item" slot-scope="{item}">
               <img @dragstart='()=>{return false}' :src="item.img">
             </div>
             <div slot="foot" slot-scope="{data, index}" class="ban">
               <span @click="iactive=i" v-for="(item, i) in data" :key="i" :class="{active: i===index}"></span>
             </div>
-          </touch>
+          </touch> -->
           <div class="e-node-w">
             <h2 class="common-title">{{langAbout.events.title}}</h2>
             <ul class="e-node">
@@ -63,6 +73,8 @@ import aboutBg from '@/components/aboutBg'
 import touch from '@/components/touch'
 import footer from '@/page/layout/footer'
 import { getPosition, detectZoom } from '@/util'
+import 'swiper/css/swiper.css'
+import { Swiper, SwiperSlide } from 'vue-awesome-swiper'
 
 // import * as luxy from 'luxy.js'
 
@@ -91,19 +103,35 @@ export default {
     return {
       devicePixelRatio: detectZoom(),
       imgs,
-      iactive: 0
+      iactive: 0,
+      swiperOption: {
+        autoplay: {
+          delay: 3000,
+          autoplayStopOnLast: false,
+          disableOnInteraction: false
+        },
+        on: {
+          slideChangeTransitionStart: () => {
+            this.iactive = this.mySwiper.activeIndex
+          }
+        }
+      }
     }
   },
   components: {
     aboutBg,
     touch,
-    ifooter: footer
+    ifooter: footer,
+    Swiper, SwiperSlide
   },
   computed: {
     ...mapState({
       split: state => state.ui.navDivision,
       langAbout: state => state.language.home.about
-    })
+    }),
+    mySwiper () {
+      return this.$refs['mySwiper'].$swiper
+    }
   },
   mounted () {
     this.timeout = setTimeout(() => {
@@ -132,6 +160,12 @@ export default {
       })
     }, 100)
   },
+  methods: {
+    slide (i) {
+      this.mySwiper.slideTo(i, 500, false)
+      this.iactive = i
+    }
+  },
   destroyed () {
     clearTimeout(this.timeout)
     window.removeEventListener('scroll', this.scrollHandle)
@@ -171,4 +205,10 @@ export default {
     left: 40px;
   }
 }
+.banner-bg {
+  width: 360px;
+  height: 240px;
+  background-repeat: no-repeat;
+  background-size: cover;
+}
 </style>

+ 20 - 16
pc/src/page/about/style.scss

@@ -104,23 +104,27 @@ $txt_delay: 0.2s;
             -webkit-user-drag:none;
           }
         }
-        .ban {
-          width: 100%;
-          height: 1px;
+        
+      }
+      .ban {
+        width: 360px;
+        height: 1px;
+        background: #d4d4d4;
+        margin-top: 10px;
+        display: flex;
+        position: absolute;
+        left: 0;
+        top: 250px;
+        span {
+          cursor: pointer;
+          flex: 1;
+          height: 4px;
+          display: inline-block;
+          position: relative;
+          top: -2px;
+        }
+        .active {
           background: #d4d4d4;
-          margin-top: 10px;
-          display: flex;
-          span {
-            cursor: pointer;
-            flex: 1;
-            height: 4px;
-            display: inline-block;
-            position: relative;
-            top: -2px;
-          }
-          .active {
-            background: #d4d4d4;
-          }
         }
       }
       .e-node {

+ 1 - 1
pc/src/page/layout/aside/temp/cart.vue

@@ -1,7 +1,7 @@
 <template>
   <div class="cart-con" :style="{maxHeight:active?'100%':'0'}">
     <div class="login-mask" v-if="showClause"></div>
-    <component :is="cp.type" :active='active' :psku="cp.sku" @fixSku='handleSku' @backList="cp.type='list'" :fromList='cp.fromList' @toPay="handlePay"></component>
+    <component v-if="cp" :is="cp.type" :active='active' :psku="cp.sku" @fixSku='handleSku' @backList="cp.type='list'" :fromList='cp.fromList' @toPay="handlePay"></component>
   </div>
 </template>
 

+ 16 - 10
pc/src/page/layout/header/index.vue

@@ -43,18 +43,17 @@
           <!-- <span class="language en" :class="{'is-active': language === 'en'}" @click="changeLanguage('en')">EN</span>
           <span class="language" :class="{'is-active': language !== 'en'}" @click="changeLanguage('zh')">中</span> -->
         </div>
-        <div class="user" @click="$router.push('/login/login')" v-if="!isLogin"></div>
+        <div class="loginAndRegis"  v-if="!isLogin"><span @click="$router.push('/login/login')">{{$t('login.login')}}</span>|<span @click="$router.push('/login/register')">{{$t('login.register')}}</span></div>
         <div v-else class="user-w">
-          <div class="user avatar"  :style="{'background-image': `url(${info.head})`}" @click="$router.push('/information')">
-          </div>
+          <div class="user avatar" v-if="info.head"  :style="{'background-image': `url(${info.head})`}" @click="$router.push('/information')"></div>
           <div class="list">
-              <a class="header-item" @click="$router.push('/information')">
-                <ul class="child-list">
-                  <li @click="$router.push('/information')">{{ homeLang.headers.myaccount }}</li>
-                  <li @click.stop="handleLogout">{{ homeLang.headers.logout }}</li>
-                </ul>
-              </a>
-            </div>
+            <a class="header-item" @click="$router.push('/information')">
+              <ul class="child-list">
+                <li @click="$router.push('/information')">{{ homeLang.headers.myaccount }}</li>
+                <li @click.stop="handleLogout">{{ homeLang.headers.logout }}</li>
+              </ul>
+            </a>
+          </div>
         </div>
         <div class="cart" @click="handleCartClick" v-if="isLogin">
           <h-icon type="xingouwuche" class="icon" />
@@ -328,4 +327,11 @@ export default {
 .shop-btn {
   cursor: pointer;
 }
+.loginAndRegis {
+  font-size: 14px;
+  span {
+    cursor: pointer;
+    padding: 0 5px;
+  }
+}
 </style>

+ 6 - 5
pc/src/page/login/components/cameraLogin.vue

@@ -50,11 +50,12 @@ export default {
             this.$store.dispatch('getCart')
             this.$bus.$emit('hasLogin')
             const from = this.$route.query.from
-            if (from) {
-              this.$router.push(from)
-            } else {
-              this.$router.push('/')
-            }
+            this.$router.push('/information')
+            // if (from) {
+            //   this.$router.push(from)
+            // } else {
+            //   this.$router.push('/')
+            // }
           }
           
           return false

+ 10 - 5
pc/src/page/login/components/codeLogin.vue

@@ -53,8 +53,12 @@ export default {
       }
       this.selectArea = item
     },
+    testPhone () {
+
+    },
     async sendCode () {
       if (this.sendCodeExTime) return;
+
       let res = await this.$store.dispatch('getAuthCode', {
         phone: this.loginForm.phone,
         code: Number(this.selectArea[1].substr(1))
@@ -104,11 +108,12 @@ export default {
       let res = await this.$store.dispatch('codeLogin', params)
       if (res) {
         const from = this.$route.query.from
-        if (from) {
-          this.$router.push(from)
-        } else {
-          this.$router.push('/')
-        }
+        this.$router.push('/information')
+        // if (from) {
+        //   this.$router.push(from)
+        // } else {
+        //   this.$router.push('/')
+        // }
       }
     }
   },

+ 12 - 8
pc/src/page/login/components/login.vue

@@ -33,12 +33,15 @@ import { Base64 } from 'js-base64'
 import { mapState } from 'vuex'
 export default {
   data () {
+    let remember = localStorage.getItem('remember') || false
+    let username = localStorage.getItem('username')
+    let password = localStorage.getItem('password')
     return {
       showPassword: false,
-      rememberMe: false,
+      rememberMe: remember,
       form: {
-        phone: '',
-        password: ''
+        phone: username,
+        password: password
       }
     }
   },
@@ -114,11 +117,12 @@ export default {
             return
           }
           const from = this.$route.query.from
-          if (from) {
-            this.$router.push(from)
-          } else {
-            this.$router.push('/')
-          }
+          // if (from) {
+          //   this.$router.push(from)
+          // } else {
+          //   this.$router.push('/information')
+          // }
+          this.$router.push('/information')
         } catch (err) {
 
         }

+ 1 - 1
pc/src/page/mall/pay/index.vue

@@ -25,7 +25,7 @@
           <p class="label">{{ $t('mall.payNum') }}:</p>
           <p class="price">¥{{response.price}}</p>
           <div class="pay-qrcode">
-            <img :src="`${$serverName}${response.src}`" alt="">
+            <img v-if="response.src" :src="`${$serverName}${response.src}`" alt="">
             <p>{{ $t('mall.payTip', {type: selectedPayType === 'alipay' ? $t('mall.aliPay') : $t('mall.wechat')}) }}</p>
           </div>
           <div :class="`pay-scan-tip ${language === 'zh' ? '' : 'isEn'}`"></div>

+ 1 - 1
pc/src/page/manage/temp/information.vue

@@ -513,7 +513,7 @@ export default {
       margin: 5px 0;
       background-size: cover;
       background-repeat: no-repeat;
-
+      border-radius: 50%;
     }
     .nickname {
       width: 250px;

+ 6 - 6
pc/src/page/service/temp/index.vue

@@ -41,21 +41,21 @@ export default {
       active: '',
       listItem: [
         {
-          name: this.$t('service.mVideo'),
-          path: '/service/mVideo/all'
+          name: this.$t('service.app'),
+          path: '/service/app/pro'
         },
         {
           name: this.$t('service.use'),
           path: '/service/use/pro'
         },
         {
-          name: this.$t('service.app'),
-          path: '/service/app/pro'
-        },
-        {
           name: this.$t('service.clause'),
           path: '/service/clause/pro'
         },
+        {
+          name: this.$t('service.mVideo'),
+          path: '/service/mVideo/all'
+        }
       ]
     }
   },

+ 0 - 1
pc/src/page/service/temp/use.vue

@@ -63,7 +63,6 @@ export default {
         document.querySelector('#dcon').scrollTop = offTop
         let fixTop = Math.round(offTop / this.$refs.dcon.scrollHeight * 100)
         this.scorlltop = fixTop + '%'
-        console.log(offTop)
         setTimeout(() => {
           this.$refs.dcon.addEventListener('scroll', this.listen)
         }, 500)