Pārlūkot izejas kodu

散户加气3.1

chenlei 1 gadu atpakaļ
vecāks
revīzija
28e17ac677
6 mainītis faili ar 147 papildinājumiem un 43 dzēšanām
  1. 34 31
      src/App.vue
  2. 1 1
      src/manifest.json
  3. 23 1
      src/pages.json
  4. 7 0
      src/pages/index/index.vue
  5. 51 5
      src/pages/login/index.vue
  6. 31 5
      src/style/index.scss

+ 34 - 31
src/App.vue

@@ -5,39 +5,42 @@ onLaunch(async () => {
   store.common.data.mockScenes = ''
   // 容器中心需要等待的等待放行器
   store.common.data._releaser = func.releaser()
-  const accountInfo = uni.getAccountInfoSync()
-  // 体验版-假数据方便通过审核
-  if (accountInfo?.miniProgram?.envVersion === 'trial') {
-    store.user.initUserInfo(
-      mock.request[config.common.mockScenes.examine][config.webapi.user.token.name].data,
-    )
-    store.common.data.mockScenes = config.common.mockScenes.examine
-  } else {
-    store.common.data.mockScenes = ''
-  }
-  store.common.data._releaser.s()
-  store.common.data._releaser = null
+  // const accountInfo = uni.getAccountInfoSync()
+  // // 体验版-假数据方便通过审核
+  // if (accountInfo?.miniProgram?.envVersion === 'trial') {
+  //   store.user.initUserInfo(
+  //     mock.request[config.common.mockScenes.examine][config.webapi.user.token.name].data,
+  //   )
+  //   store.common.data.mockScenes = config.common.mockScenes.examine
+  // } else {
+  //   store.common.data.mockScenes = ''
+  // }
+
   // #endif
 
-  // await webapi.strategy
-  //   .get_by_Name<null, SystemConfig对象>({
-  //     // name: 'examine_switch',
-  //     name: 'examine_switch1',
-  //   })
-  //   .then((res) => {
-  //     // 开关打开时 设置场景值
-  //     if (res.value === '1') {
-  //       store.user.initUserInfo(
-  //         mock.request[config.common.mockScenes.examine][config.webapi.user.token.name].data,
-  //       )
-  //       store.common.data.mockScenes = config.common.mockScenes.examine
-  //     } else {
-  //       store.common.data.mockScenes = ''
-  //     }
-  //   })
-  //   .catch(() => {
-  //     store.common.data.mockScenes = ''
-  //   })
+  await webapi.strategy
+    .get_by_Name<null, SystemConfig对象>({
+      // 三个开关轮换用
+      name: 'fake_switch',
+      // name: 'examine_switch',
+      // name: 'examine_switch1',
+    })
+    .then((res) => {
+      // 开关打开时 设置场景值
+      if (res.value === '1') {
+        store.user.initUserInfo(
+          mock.request[config.common.mockScenes.examine][config.webapi.user.token.name].data,
+        )
+        store.common.data.mockScenes = config.common.mockScenes.examine
+      } else {
+        store.common.data.mockScenes = ''
+      }
+    })
+    .catch(() => {
+      store.common.data.mockScenes = ''
+    })
+  store.common.data._releaser.s()
+  store.common.data._releaser = null
 })
 onShow((options) => {
   // ay.staticData.args.options = options

+ 1 - 1
src/manifest.json

@@ -83,7 +83,7 @@
   },
   "quickapp": {},
   "mp-weixin": {
-    "appid": "wx72ba78af2cf68cf0",
+    "appid": "wxf69daeba7aec5be4",
     "setting": {
       "urlCheck": false,
       "minified": true

+ 23 - 1
src/pages.json

@@ -111,5 +111,27 @@
       "type": "page"
     }
   ],
-  "subPackages": []
+  "subPackages": [
+    {
+      "root": "pagesSubExample",
+      "pages": [
+        {
+          "path": "index",
+          "type": "page"
+        },
+        {
+          "path": "list/index",
+          "type": "page"
+        },
+        {
+          "path": "login/index",
+          "type": "page"
+        },
+        {
+          "path": "webview/index",
+          "type": "page"
+        }
+      ]
+    }
+  ]
 }

+ 7 - 0
src/pages/index/index.vue

@@ -1,5 +1,8 @@
 <template>
   <ay-container v-show="store.user.isLogined">
+    <van-pull-refresh v-model="data.loading" @refresh="methods.onRefresh">
+      <p>刷新次数:</p>
+    </van-pull-refresh>
     <div class="chunk">
       <div class="center justify-between top">
         <div class="center" @click="methods.goPerson">
@@ -207,6 +210,7 @@ const staticData = {
 }
 
 const data = ay.initData({
+  loading: false,
   /** 未load */
   firstUnload: true,
   /** 存在未支付完成订单 */
@@ -268,6 +272,9 @@ const showcm = computed(() => {
 })
 const methods = ay.initMethods(
   {
+    onRefresh() {
+      console.log(arguments)
+    },
     hiddenDoorb() {
       data.hiddenDoor[data.hiddenDoor.length - 1]++
     },

+ 51 - 5
src/pages/login/index.vue

@@ -41,10 +41,37 @@
       ></div>
       <div v-else class="p-color login-H5" @click="methods.goLoginH5">大象加气“驾驶员”账号登录</div>
     </div>
+    <uni-popup ref="inputDialog" type="dialog">
+      <div class="bg-color s-fz bline dialog">
+        <div class="p-spacm2 bottom-line">
+          请阅读并同意:
+          <span class="p-color" @click="methods.agreement">服务条款、隐私协议</span>
+        </div>
+        <div class="flex">
+          <div class="flex-1 right-line">
+            <button
+              class="font-bold"
+              :loading="store.webapi.user.token.ing"
+              :disabled="store.webapi.user.token.ios"
+              open-type="getPhoneNumber"
+              :phone-number-no-quota-toast="false"
+              @getphonenumber="methods.getphonenumber"
+              @click="methods.agree"
+            >
+              同意并登录
+            </button>
+          </div>
+          <div class="flex-1">
+            <button @click="methods.cancel">取消</button>
+          </div>
+        </div>
+      </div>
+    </uni-popup>
   </ay-container>
 </template>
 
 <script lang="ts" setup>
+const inputDialog = ref()
 const data = ay.initData({
   check: false,
   shake: false,
@@ -53,12 +80,21 @@ const methods = {
   checkChange(e) {
     data.check = !!e.detail.value.length
   },
+  agree() {
+    data.check = true
+  },
+  cancel() {
+    inputDialog.value.close()
+  },
   async clickLogin() {
-    if (data.check) return
-    func.native.showToast('请阅读并同意服务条款和隐私协议')
-    data.shake = true
-    await func.awaiter(400)
-    data.shake = false
+    if (!data.check) {
+      inputDialog.value.open()
+    }
+    // if (data.check) return
+    // func.native.showToast('请阅读并同意服务条款和隐私协议')
+    // data.shake = true
+    // await func.awaiter(400)
+    // data.shake = false
   },
   async getphonenumber(e) {
     if (!e.detail.code) {
@@ -145,6 +181,16 @@ onUnload(() => {
 .accet-button-shake {
   animation: shake 0.4s infinite;
 }
+.dialog {
+  overflow: hidden;
+  border-radius: $p-spacd2;
+  button {
+    padding: $p-spacd4;
+    font-size: $s-fz;
+    background-color: $bg-color;
+    border-radius: 0;
+  }
+}
 @keyframes shake {
   0% {
     transform: translate(6rpx, 4rpx);

+ 31 - 5
src/style/index.scss

@@ -181,49 +181,67 @@ $spac-map: (
 );
 
 
-// 循环 $p-spac除以 $j
+// 循环 $p-spac $j
 @for $j from 1 to 5 {
+  // 除以 $j
   $suffix: if($j ==1, '', 'd' + $j);
+  // 乘以 $j
   $suffixm: if($j ==1, '', 'm' + $j);
 
+  // margin $p-spac除数
   .m-spac#{$suffix} {
     margin:calc($p-spac / #{$j});
   }
 
+  // margin $p-spac除数 负值
   .nm-spac#{$suffix} {
     margin:calc($p-spac / -#{$j});
   }
 
+  // padding $p-spac除数
   .p-spac#{$suffix} {
     padding:calc($p-spac / #{$j});
   }
 
+  // padding $p-spac倍数
+  .p-spac#{$suffixm} {
+    padding:calc($p-spac * #{$j});
+  }
+
   //循环$spac-map
   @for $i from 0 to 4 {
     $t: map-get($spac-map, $i);
 
+    // 4方向 $p-spac除数
     .#{map-get($t,0)}-spac#{ $suffix} {
       #{map-get($t,1)}: calc($p-spac / #{$j});
     }
 
-    .m#{map-get($t,0)}-spac#{ $suffix} {
-      margin-#{map-get($t,1)}: calc($p-spac / #{$j});
-    }
-
+    // margin 4方向 $p-spac倍数
     .m#{map-get($t,0)}-spac#{ $suffixm} {
       margin-#{map-get($t,1)}: calc($p-spac * #{$j});
     }
 
+    // margin 4方向 $p-spac除数 
+    .m#{map-get($t,0)}-spac#{ $suffix} {
+      margin-#{map-get($t,1)}: calc($p-spac / #{$j});
+    }
+
+    // margin 4方向 $p-spac除数 负值
     .nm#{map-get($t,0)}-spac#{ $suffix} {
       margin-#{map-get($t,1)}: calc($p-spac / -#{$j});
     }
 
+    // padding 4方向 $p-spac除数
     .p#{map-get($t,0)}-spac#{ $suffix} {
       padding-#{map-get($t,1)}: calc($p-spac / #{$j});
     }
   }
 }
 
+.bg-color {
+  background-color: $bg-color;
+}
 
 .tag-rb {
   position: absolute;
@@ -391,6 +409,14 @@ image {
   border-bottom: solid $border-color 1rpx;
 }
 
+.left-line {
+  border-left: solid $border-color 1rpx;
+}
+
+.right-line {
+  border-right: solid $border-color 1rpx;
+}
+
 .money-bg {
   background-color: rgba($p-price-color, 0.1);
 }