Browse Source

修复

master
lincm 4 years ago
parent
commit
7c5ee6bfe3
  1. 4
      .hbuilderx/launch.json
  2. 2
      api/request.js
  3. 24
      common/common.scss
  4. 4
      manifest.json
  5. 452
      package-lock.json
  6. 22
      pages.json
  7. 25
      pages/account/addAddress.vue
  8. 75
      pages/account/deleteCount.vue
  9. 73
      pages/account/deleteOk.vue
  10. 4
      pages/account/message.vue
  11. 42
      pages/account/settings.vue
  12. 61
      pages/account/wishlist.vue
  13. 8
      pages/category/index.vue
  14. 15
      pages/category/productList.vue
  15. 1
      pages/index/flashSale.vue
  16. 179
      pages/index/index.vue
  17. 38
      pages/login/index.vue
  18. 26
      pages/order/confirmation.vue
  19. 137
      pages/productDetails/index.vue
  20. 2
      pages/productDetails/review.vue
  21. 16
      pages/shippingCart/index.vue
  22. BIN
      static/icon/close.png
  23. BIN
      static/icon/deleteok.png
  24. BIN
      static/icon/eye_close.png
  25. BIN
      static/icon/eye_open.png
  26. BIN
      static/img/left_white.png
  27. BIN
      static/img/search_white.png
  28. 3
      store/store.js

4
.hbuilderx/launch.json

@ -14,6 +14,10 @@
{
"launchtype" : "local"
},
"mp-weixin" :
{
"launchtype" : "local"
},
"type" : "uniCloud"
}
]

2
api/request.js

@ -21,7 +21,7 @@ const httpRequest = (params) => {
phoneos:'ANDROID'// 设备系统
}
let data=Object.assign(json_data,params.data)
console.info(data)
// console.info(data)
uni.setStorageSync('appdata',data)
let key=params.key
if(params.isEncryption){

24
common/common.scss

@ -505,7 +505,30 @@
.login{
padding: 0 32rpx;
.login_input1{
display: flex;
height: 97.33rpx;
border: 1px solid #323333;
border-radius: 48.67rpx;
font-size: 22.67rpx;
padding-left: 33.33rpx;
// margin-bottom: 10rpx;
.login_input1_text{
height: 97.33rpx;
width: 92%;
border-radius: 48.67rpx;
font-size: 22.67rpx;
margin-bottom: 56rpx;
}
.login_see{
font-size: 22.67rpx;
margin-bottom: 56rpx;
}
// padding-top: 10rpx;
}
.login_input{
height: 97.33rpx;
border: 1px solid #323333;
border-radius: 48.67rpx;
@ -533,6 +556,7 @@
color: white;
// background-color: #e7e7e7;
// color: #666666;
margin-top: 30rpx;
border-radius: 6.67rpx;
margin-bottom: 52rpx;
font-weight: bold;

4
manifest.json

@ -41,7 +41,9 @@
"autoSdkPermissions" : true
},
/* ios */
"ios" : {},
"ios" : {
"dSYMs" : false
},
/* SDK */
"sdkConfigs" : {
"ad" : {},

452
package-lock.json

@ -1,387 +1,12 @@
{
"name": "cnic_buyer",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"dependencies": {
"base-64": "^1.0.0",
"crypto-js": "^4.1.1",
"vuex": "^4.0.2"
}
},
"node_modules/@babel/parser": {
"version": "7.18.9",
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.9.tgz",
"integrity": "sha512-9uJveS9eY9DJ0t64YbIBZICtJy8a5QrDEVdiLCG97fVLpDTpGX7t8mMSb6OWw6Lrnjqj4O8zwjELX3dhoMgiBg==",
"peer": true,
"bin": {
"parser": "bin/babel-parser.js"
},
"engines": {
"node": ">=6.0.0"
}
},
"node_modules/@vue/compiler-core": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.37.tgz",
"integrity": "sha512-81KhEjo7YAOh0vQJoSmAD68wLfYqJvoiD4ulyedzF+OEk/bk6/hx3fTNVfuzugIIaTrOx4PGx6pAiBRe5e9Zmg==",
"peer": true,
"dependencies": {
"@babel/parser": "^7.16.4",
"@vue/shared": "3.2.37",
"estree-walker": "^2.0.2",
"source-map": "^0.6.1"
}
},
"node_modules/@vue/compiler-dom": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.37.tgz",
"integrity": "sha512-yxJLH167fucHKxaqXpYk7x8z7mMEnXOw3G2q62FTkmsvNxu4FQSu5+3UMb+L7fjKa26DEzhrmCxAgFLLIzVfqQ==",
"peer": true,
"dependencies": {
"@vue/compiler-core": "3.2.37",
"@vue/shared": "3.2.37"
}
},
"node_modules/@vue/compiler-sfc": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.37.tgz",
"integrity": "sha512-+7i/2+9LYlpqDv+KTtWhOZH+pa8/HnX/905MdVmAcI/mPQOBwkHHIzrsEsucyOIZQYMkXUiTkmZq5am/NyXKkg==",
"peer": true,
"dependencies": {
"@babel/parser": "^7.16.4",
"@vue/compiler-core": "3.2.37",
"@vue/compiler-dom": "3.2.37",
"@vue/compiler-ssr": "3.2.37",
"@vue/reactivity-transform": "3.2.37",
"@vue/shared": "3.2.37",
"estree-walker": "^2.0.2",
"magic-string": "^0.25.7",
"postcss": "^8.1.10",
"source-map": "^0.6.1"
}
},
"node_modules/@vue/compiler-ssr": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.37.tgz",
"integrity": "sha512-7mQJD7HdXxQjktmsWp/J67lThEIcxLemz1Vb5I6rYJHR5vI+lON3nPGOH3ubmbvYGt8xEUaAr1j7/tIFWiEOqw==",
"peer": true,
"dependencies": {
"@vue/compiler-dom": "3.2.37",
"@vue/shared": "3.2.37"
}
},
"node_modules/@vue/devtools-api": {
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.2.1.tgz",
"integrity": "sha512-OEgAMeQXvCoJ+1x8WyQuVZzFo0wcyCmUR3baRVLmKBo1LmYZWMlRiXlux5jd0fqVJu6PfDbOrZItVqUEzLobeQ=="
},
"node_modules/@vue/reactivity": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.37.tgz",
"integrity": "sha512-/7WRafBOshOc6m3F7plwzPeCu/RCVv9uMpOwa/5PiY1Zz+WLVRWiy0MYKwmg19KBdGtFWsmZ4cD+LOdVPcs52A==",
"peer": true,
"dependencies": {
"@vue/shared": "3.2.37"
}
},
"node_modules/@vue/reactivity-transform": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.37.tgz",
"integrity": "sha512-IWopkKEb+8qpu/1eMKVeXrK0NLw9HicGviJzhJDEyfxTR9e1WtpnnbYkJWurX6WwoFP0sz10xQg8yL8lgskAZg==",
"peer": true,
"dependencies": {
"@babel/parser": "^7.16.4",
"@vue/compiler-core": "3.2.37",
"@vue/shared": "3.2.37",
"estree-walker": "^2.0.2",
"magic-string": "^0.25.7"
}
},
"node_modules/@vue/runtime-core": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.37.tgz",
"integrity": "sha512-JPcd9kFyEdXLl/i0ClS7lwgcs0QpUAWj+SKX2ZC3ANKi1U4DOtiEr6cRqFXsPwY5u1L9fAjkinIdB8Rz3FoYNQ==",
"peer": true,
"dependencies": {
"@vue/reactivity": "3.2.37",
"@vue/shared": "3.2.37"
}
},
"node_modules/@vue/runtime-dom": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.37.tgz",
"integrity": "sha512-HimKdh9BepShW6YozwRKAYjYQWg9mQn63RGEiSswMbW+ssIht1MILYlVGkAGGQbkhSh31PCdoUcfiu4apXJoPw==",
"peer": true,
"dependencies": {
"@vue/runtime-core": "3.2.37",
"@vue/shared": "3.2.37",
"csstype": "^2.6.8"
}
},
"node_modules/@vue/server-renderer": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.37.tgz",
"integrity": "sha512-kLITEJvaYgZQ2h47hIzPh2K3jG8c1zCVbp/o/bzQOyvzaKiCquKS7AaioPI28GNxIsE/zSx+EwWYsNxDCX95MA==",
"peer": true,
"dependencies": {
"@vue/compiler-ssr": "3.2.37",
"@vue/shared": "3.2.37"
},
"peerDependencies": {
"vue": "3.2.37"
}
},
"node_modules/@vue/shared": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.37.tgz",
"integrity": "sha512-4rSJemR2NQIo9Klm1vabqWjD8rs/ZaJSzMxkMNeJS6lHiUjjUeYFbooN19NgFjztubEKh3WlZUeOLVdbbUWHsw==",
"peer": true
},
"node_modules/base-64": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz",
"integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg=="
},
"node_modules/crypto-js": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz",
"integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw=="
},
"node_modules/csstype": {
"version": "2.6.20",
"resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.20.tgz",
"integrity": "sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA==",
"peer": true
},
"node_modules/estree-walker": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==",
"peer": true
},
"node_modules/magic-string": {
"version": "0.25.9",
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz",
"integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
"peer": true,
"dependencies": {
"sourcemap-codec": "^1.4.8"
}
},
"node_modules/nanoid": {
"version": "3.3.4",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
"integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
"peer": true,
"bin": {
"nanoid": "bin/nanoid.cjs"
},
"engines": {
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
}
},
"node_modules/picocolors": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
"integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
"peer": true
},
"node_modules/postcss": {
"version": "8.4.14",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz",
"integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==",
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/postcss/"
},
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/postcss"
}
],
"peer": true,
"dependencies": {
"nanoid": "^3.3.4",
"picocolors": "^1.0.0",
"source-map-js": "^1.0.2"
},
"engines": {
"node": "^10 || ^12 || >=14"
}
},
"node_modules/source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"peer": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/source-map-js": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
"peer": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/sourcemap-codec": {
"version": "1.4.8",
"resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
"integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
"peer": true
},
"node_modules/vue": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/vue/-/vue-3.2.37.tgz",
"integrity": "sha512-bOKEZxrm8Eh+fveCqS1/NkG/n6aMidsI6hahas7pa0w/l7jkbssJVsRhVDs07IdDq7h9KHswZOgItnwJAgtVtQ==",
"peer": true,
"dependencies": {
"@vue/compiler-dom": "3.2.37",
"@vue/compiler-sfc": "3.2.37",
"@vue/runtime-dom": "3.2.37",
"@vue/server-renderer": "3.2.37",
"@vue/shared": "3.2.37"
}
},
"node_modules/vuex": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/vuex/-/vuex-4.0.2.tgz",
"integrity": "sha512-M6r8uxELjZIK8kTKDGgZTYX/ahzblnzC4isU1tpmEuOIIKmV+TRdc+H4s8ds2NuZ7wpUTdGRzJRtoj+lI+pc0Q==",
"dependencies": {
"@vue/devtools-api": "^6.0.0-beta.11"
},
"peerDependencies": {
"vue": "^3.0.2"
}
}
},
"lockfileVersion": 1,
"dependencies": {
"@babel/parser": {
"version": "7.18.9",
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.9.tgz",
"integrity": "sha512-9uJveS9eY9DJ0t64YbIBZICtJy8a5QrDEVdiLCG97fVLpDTpGX7t8mMSb6OWw6Lrnjqj4O8zwjELX3dhoMgiBg==",
"peer": true
},
"@vue/compiler-core": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.2.37.tgz",
"integrity": "sha512-81KhEjo7YAOh0vQJoSmAD68wLfYqJvoiD4ulyedzF+OEk/bk6/hx3fTNVfuzugIIaTrOx4PGx6pAiBRe5e9Zmg==",
"peer": true,
"requires": {
"@babel/parser": "^7.16.4",
"@vue/shared": "3.2.37",
"estree-walker": "^2.0.2",
"source-map": "^0.6.1"
}
},
"@vue/compiler-dom": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.2.37.tgz",
"integrity": "sha512-yxJLH167fucHKxaqXpYk7x8z7mMEnXOw3G2q62FTkmsvNxu4FQSu5+3UMb+L7fjKa26DEzhrmCxAgFLLIzVfqQ==",
"peer": true,
"requires": {
"@vue/compiler-core": "3.2.37",
"@vue/shared": "3.2.37"
}
},
"@vue/compiler-sfc": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.2.37.tgz",
"integrity": "sha512-+7i/2+9LYlpqDv+KTtWhOZH+pa8/HnX/905MdVmAcI/mPQOBwkHHIzrsEsucyOIZQYMkXUiTkmZq5am/NyXKkg==",
"peer": true,
"requires": {
"@babel/parser": "^7.16.4",
"@vue/compiler-core": "3.2.37",
"@vue/compiler-dom": "3.2.37",
"@vue/compiler-ssr": "3.2.37",
"@vue/reactivity-transform": "3.2.37",
"@vue/shared": "3.2.37",
"estree-walker": "^2.0.2",
"magic-string": "^0.25.7",
"postcss": "^8.1.10",
"source-map": "^0.6.1"
}
},
"@vue/compiler-ssr": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.2.37.tgz",
"integrity": "sha512-7mQJD7HdXxQjktmsWp/J67lThEIcxLemz1Vb5I6rYJHR5vI+lON3nPGOH3ubmbvYGt8xEUaAr1j7/tIFWiEOqw==",
"peer": true,
"requires": {
"@vue/compiler-dom": "3.2.37",
"@vue/shared": "3.2.37"
}
},
"@vue/devtools-api": {
"version": "6.2.1",
"resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.2.1.tgz",
"integrity": "sha512-OEgAMeQXvCoJ+1x8WyQuVZzFo0wcyCmUR3baRVLmKBo1LmYZWMlRiXlux5jd0fqVJu6PfDbOrZItVqUEzLobeQ=="
},
"@vue/reactivity": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.37.tgz",
"integrity": "sha512-/7WRafBOshOc6m3F7plwzPeCu/RCVv9uMpOwa/5PiY1Zz+WLVRWiy0MYKwmg19KBdGtFWsmZ4cD+LOdVPcs52A==",
"peer": true,
"requires": {
"@vue/shared": "3.2.37"
}
},
"@vue/reactivity-transform": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.2.37.tgz",
"integrity": "sha512-IWopkKEb+8qpu/1eMKVeXrK0NLw9HicGviJzhJDEyfxTR9e1WtpnnbYkJWurX6WwoFP0sz10xQg8yL8lgskAZg==",
"peer": true,
"requires": {
"@babel/parser": "^7.16.4",
"@vue/compiler-core": "3.2.37",
"@vue/shared": "3.2.37",
"estree-walker": "^2.0.2",
"magic-string": "^0.25.7"
}
},
"@vue/runtime-core": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.37.tgz",
"integrity": "sha512-JPcd9kFyEdXLl/i0ClS7lwgcs0QpUAWj+SKX2ZC3ANKi1U4DOtiEr6cRqFXsPwY5u1L9fAjkinIdB8Rz3FoYNQ==",
"peer": true,
"requires": {
"@vue/reactivity": "3.2.37",
"@vue/shared": "3.2.37"
}
},
"@vue/runtime-dom": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.37.tgz",
"integrity": "sha512-HimKdh9BepShW6YozwRKAYjYQWg9mQn63RGEiSswMbW+ssIht1MILYlVGkAGGQbkhSh31PCdoUcfiu4apXJoPw==",
"peer": true,
"requires": {
"@vue/runtime-core": "3.2.37",
"@vue/shared": "3.2.37",
"csstype": "^2.6.8"
}
},
"@vue/server-renderer": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.2.37.tgz",
"integrity": "sha512-kLITEJvaYgZQ2h47hIzPh2K3jG8c1zCVbp/o/bzQOyvzaKiCquKS7AaioPI28GNxIsE/zSx+EwWYsNxDCX95MA==",
"peer": true,
"requires": {
"@vue/compiler-ssr": "3.2.37",
"@vue/shared": "3.2.37"
}
},
"@vue/shared": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.37.tgz",
"integrity": "sha512-4rSJemR2NQIo9Klm1vabqWjD8rs/ZaJSzMxkMNeJS6lHiUjjUeYFbooN19NgFjztubEKh3WlZUeOLVdbbUWHsw==",
"peer": true
},
"base-64": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz",
@ -392,81 +17,6 @@
"resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz",
"integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw=="
},
"csstype": {
"version": "2.6.20",
"resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.20.tgz",
"integrity": "sha512-/WwNkdXfckNgw6S5R125rrW8ez139lBHWouiBvX8dfMFtcn6V81REDqnH7+CRpRipfYlyU1CmOnOxrmGcFOjeA==",
"peer": true
},
"estree-walker": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==",
"peer": true
},
"magic-string": {
"version": "0.25.9",
"resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz",
"integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==",
"peer": true,
"requires": {
"sourcemap-codec": "^1.4.8"
}
},
"nanoid": {
"version": "3.3.4",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz",
"integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==",
"peer": true
},
"picocolors": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
"integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
"peer": true
},
"postcss": {
"version": "8.4.14",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz",
"integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==",
"peer": true,
"requires": {
"nanoid": "^3.3.4",
"picocolors": "^1.0.0",
"source-map-js": "^1.0.2"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"peer": true
},
"source-map-js": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
"peer": true
},
"sourcemap-codec": {
"version": "1.4.8",
"resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
"integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
"peer": true
},
"vue": {
"version": "3.2.37",
"resolved": "https://registry.npmjs.org/vue/-/vue-3.2.37.tgz",
"integrity": "sha512-bOKEZxrm8Eh+fveCqS1/NkG/n6aMidsI6hahas7pa0w/l7jkbssJVsRhVDs07IdDq7h9KHswZOgItnwJAgtVtQ==",
"peer": true,
"requires": {
"@vue/compiler-dom": "3.2.37",
"@vue/compiler-sfc": "3.2.37",
"@vue/runtime-dom": "3.2.37",
"@vue/server-renderer": "3.2.37",
"@vue/shared": "3.2.37"
}
},
"vuex": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/vuex/-/vuex-4.0.2.tgz",

22
pages.json

@ -30,7 +30,8 @@
"style": {
"app-plus":{
"titleNView":false
}
},
"navigationBarTextStyle":"white"
}
@ -51,10 +52,22 @@
"path": "pages/account/deleteCount",
"style": {
"navigationBarBackgroundColor":"#000000",
"navigationBarTitleText": "delete Count",
"navigationStyle":"custom",
"navigationBarTextStyle":"white"
}
},
{
"path": "pages/account/deleteOk",
"style": {
"navigationBarBackgroundColor":"#000000",
"navigationStyle":"custom",
"navigationBarTextStyle":"white"
}
},
{
@ -241,8 +254,11 @@
"path": "pages/category/productList",
"style": {
"titleNView":false,
"enablePullDownRefresh":true
"enablePullDownRefresh":true,
"navigationBarTextStyle":"white"
}
},
{
"path": "pages/shippingCart/index",

25
pages/account/addAddress.vue

@ -278,14 +278,17 @@
let list =[]
let listAll = []
console.info(res)
console.log(this.countryText)
// console.log(this.countryText)
if(res.error==0){
this.countryList=res.data
if(this.countryText){
res.data.map( item =>{
if(item.region_name == this.countryText){
item.regions.map(item2 =>{
list.push(item2.region_name)
list.push({
region_name:item2.region_name,
region_id:item2.region_id
})
listAll.push({
name:item2.region_name,
list:item2.regions
@ -298,7 +301,7 @@
})
}
})
console.log(listAll,'ppp')
// console.log(listAll,'ppp')
this.listAll = listAll
}
}
@ -323,7 +326,10 @@
this.countryList.map( item =>{
if(item.region_name == this.countryText){
item.regions.map(item2 =>{
list.push(item2.region_name)
list.push({
region_name:item2.region_name,
region_id:item2.region_id
})
listAll.push({
name:item2.region_name,
list:item2.regions
@ -341,8 +347,9 @@
})
}
})
console.log(listAll)
// console.log(listAll)
this.provinceList = list
console.log(this.provinceList )
this.listAll = listAll
}
@ -352,13 +359,15 @@
bindPickerChange1(e){
this.isSelect1 = true
this.provinceIndex=e.detail.value
this.provinceText=this.provinceList[this.provinceIndex]
console.log(this.provinceList)
this.provinceText=this.provinceList[this.provinceIndex].region_name
this.listAll.map(item =>{
if(item.name == this.provinceText){
this.cityList = item.list
if(this.cityList&&this.cityList[0].region_name!=undefined)
{
this.cityText = this.cityList[0].region_name
this.query.consignee.city=this.cityList[0].region_id
}
else{
this.isSelect1 = false
@ -382,6 +391,7 @@
// }
this.query.consignee.province=this.provinceList[this.provinceIndex].region_id
console.log(this.query.consignee.province)
// this.provinceText=this.provinceList[this.provinceIndex].region_name
},
// Ñ¡Ôñ³ÇÊÐ
@ -394,9 +404,10 @@
}
},
onLoad(e) {
console.info(e)
if(e.type==1){
e.data=JSON.parse(e.data)
// console.info(e.data)
this.query.consignee=e.data
this.address=this.query.consignee.address
if(e.data.default_address_id==e.data.address_id){

75
pages/account/deleteCount.vue

@ -1,5 +1,21 @@
<template>
<view>
<view class="font">
<uni-icons type="arrow-left" size="30" @click="back" color="#fff"></uni-icons>
<text style="margin-left: 30rpx;color: white;">Delete account</text>
</view>
<view class="text_item">
Once you deactivate account, your account information will no longer be accessible.
</view>
<view class="text_item">
1. Once you deactivate account, your account information will no longer be accessible.
</view>
<view class="text_item">
2. Once you deactivate account, your account information will no longer be accessible.
</view>
<view class="text_item">
3. Once you deactivate account, your account information will no longer be accessible.
</view>
<view class="address_foot">
<button @click="deleteuserinfo()">Delete account</button>
</view>
@ -29,7 +45,6 @@
uni.showModal({
title: 'Confirm Delet?',
content: 'All the data of the account will disappear, including the balance of money, historical orders, etc. will disappear',
cancelText: "cancel", //
confirmText: "confirm", //
showCancel: true, // true
@ -40,19 +55,31 @@
console.log('comfirm') //
defaultRequest(this.delete).then(res =>{
if(res.error == 0){
uni.showToast({
icon:'none',
title:'ok to delete!'
setTimeout(() =>{
uni.showToast({
icon:'none',
title:'ok to delete!'
})
},500)
uni.navigateTo({
url:'./deleteOk'
})
}
})
} else {
console.log('cancel') //
console.log('cancel')
//
// uni.navigateTo({
// url:'./deleteOk'
// })
}
}
})
},
back(){
uni.navigateBack()
}
},
onShow() {
@ -64,14 +91,30 @@
</script>
<style lang="scss" scoped>
.padding_top{
margin-top:80rpx;
margin-left:20rpx;
padding:10rpx 10rpx;
}
.text_item{
margin-top: 50rpx;
height: 100rpx;
line-height: 50rpx;
text-align: start;
margin-left: 5vw;
margin-right: 5vw;
color:#b5b5b5;
font-size:26rpx;
}
.address_foot{
padding: 42rpx 24rpx;
padding: 24rpx 24rpx;
border-top: #E2E2E2 solid 1px;
// border-top: #E2E2E2 solid 1px;
position: fixed;
bottom: 0;
width: 100%;
box-sizing: border-box;
margin-top:50rpx;
width: 80%;
margin-left: 7%;
// box-sizing: border-box;
button{
color: white;
background-color: #000000 !important;
@ -80,4 +123,16 @@
margin: 0;
}
}
.font{
display: flex;
background-color:#000000;
color:white;
height: 100rpx;
line-height: 100rpx;
text-align: center;
padding-top:50rpx;
padding-left:20rpx;
font-size: 20px;
font-weight: bold;
}
</style>

73
pages/account/deleteOk.vue

@ -0,0 +1,73 @@
<template>
<view>
<view class="font">
<uni-icons type="closeempty" size="30" @click="back" color="#fff"></uni-icons>
<text style="margin-left: 30rpx;color: white;">Delete account</text>
</view>
<view class="icon">
<view class="icon_img"><image mode="" src="../../static/icon/deleteok.png"></image></view>
<view class="icon_text">Delete account</view>
</view>
</view>
</template>
<script>
import {defaultRequest} from '../../api/index.js'
export default {
data(){
return {
}
},
methods:{
back(){
uni.navigateTo({
url:'/pages/login/index'
})
}
},
onShow() {
}
}
</script>
<style lang="scss" scoped>
.font{
display: flex;
background-color:#000000;
color:white;
height: 100rpx;
line-height: 100rpx;
text-align: center;
padding-top:50rpx;
padding-left:20rpx;
font-size: 20px;
font-weight: bold;
margin-bottom: 60rpx;
}
.icon{
height: 150rpx;
width: 60%;
margin-left: 20%;
align-items: center;
margin-left: 76.37rpx;
.icon_img{
height: 120rpx;
width: 110rpx;
margin-left: 250rpx;
image{
height: 100%;
width: 100%;
}
}
.icon_text{
margin-left: 180rpx;
}
}
</style>

4
pages/account/message.vue

@ -38,7 +38,7 @@
list:[],
myMes:{
_action:'getmessagelist',
type:0,
type:1,
// importance:'',
// label:'',
page_index:1,
@ -82,7 +82,7 @@
this.list = item
}
})
console.log(this.list.blocks[0].block_avaiable_from)
console.log(this.list)
let str = this.list.blocks[0].block_avaiable_from
})

42
pages/account/settings.vue

@ -41,20 +41,38 @@
methods:{
signOut(){
let data={_action:'logout'}
defaultRequest2(data).then(res=>{
console.info(res)
if(res.error==0){
uni.clearStorageSync()
uni.setStorageSync('isLogin',0)
uni.setStorageSync('user_info',' ')
// uni.reLaunch({
// url:'../login/index'
// })
uni.navigateTo({
url:'../login/index'
uni.showModal({
title: 'Confirm SING OUT?',
cancelText: "cancel", //
confirmText: "confirm", //
showCancel: true, // true
// confirmColor:'#ccc',
// cancelColor: '#000',
success: (res) => {
if(res.confirm) {
console.log('comfirm')
defaultRequest2(data).then(res=>{
console.info(res)
if(res.error==0){
uni.clearStorageSync()
uni.setStorageSync('isLogin',0)
uni.setStorageSync('user_info',' ')
// uni.reLaunch({
// url:'../login/index'
// })
uni.navigateTo({
url:'../login/index'
})
}
})
}
} else {
console.log('cancel')
}
}
})
},
gotopage(a){
if(a==1){

61
pages/account/wishlist.vue

@ -4,10 +4,11 @@
<uni-nav-bar left-icon="left" :rightText="isDelete?'Done':'Delete'" title="Wishlist" color="#000000" @clickLeft="back" @clickRight="clickRight()"/>
<view class="wishlist">
<view class="wishlist_item" v-for="(item,index) in goodsList" :key="index" >
<view class="wishlist_item_img"@click="isDelete?selectGoods(item.goods_id): goDetails(item.goods_id)">
<view class="wishlist_item_img"@click="isDelete?selectGoods(item.goods_id,index): goDetails(item.goods_id)">
<image :src="item.goods_img" mode="" class="wishlist_item_img_goods"></image>
<image src="../../static/img/select1.png" mode="" class="select" v-if="isDelete && item.goods_id==goods_id || isAll"></image>
<image src="../../static/img/select.png" mode="" class="select" v-else-if="isDelete && item.goods_id!=goods_id"></image>
<image src="../../static/img/select1.png" @click="deleteTap(item)" mode=" " class="select" v-if="isDelete && item.goods_id==goods_id || isAll"></image>
<image src="../../static/img/select.png" mode="" class="select" v-else-if="isDelete && item.goods_id!=goods_id"></image>
<!-- <image :src="Src" @click="deleteTap(item)" mode=" " v-model="item.goods_id" class="select" v-if="isDelete || item.goods_id==goods_id"></image> -->
</view>
<view class="wishlist_item_bottom">
<text>US${{item.promote_price?item.promote_price:item.shop_price}}</text>
@ -16,13 +17,13 @@
</view>
</view>
<view class="wishlist_foot" v-show="isDelete">
<view class="wishlist_foot_left" @click="isAll=!isAll">
<view class="wishlist_foot_left" @click="isAllTap()">
<image src="../../static/img/select2.png" mode="" v-if="!isAll"></image>
<image src="../../static/img/select1.png" mode="" v-else></image>
<text>All</text>
</view>
<view class="wishlist_foot_right">
<button :disabled="!isAll" @click="$refs.alertDialog.open()" :class="isAll?'wishlist_foot_right_button':''">DELETE</button>
<button :disabled="!isAll || !goods_id" @click="$refs.alertDialog.open()" :class="(isAll||goods_id)?'wishlist_foot_right_button':''">DELETE</button>
</view>
</view>
<uni-popup ref="alertDialog" type="dialog">
@ -40,11 +41,13 @@
isDelete:false,
goodsList:[],
goods_id:'',
isAll:false
isAll:false,
Src:'../../static/img/select.png',
deletelist:[]
}
},
methods:{
selectGoods(id){
selectGoods(id,index){
if(id==this.goods_id){
this.goods_id=''
}else{
@ -53,6 +56,48 @@
if(this.isAll ==true){
this.isDelete=true
}
let i = index
let list = ({
id:this.goodsList[i].goods_id,
index:i
})
console.log(list)
// let str = []
if(!this.deletelist.includes(list)){
this.deletelist.push(list)
console.log(this.deletelist)
}
else if(this.deletelist.includes(list)){
let i = this.deletelist.indexOf(list)
this.deletelist = this.deletelist.splice(i,1)
console.log(this.deletelist)
}
// this.$store.commit('addSave', list)
// if(this.$store.state.goodslist.includes(list)){
// const i = this.$store.state.goodslist.indexOf(list)
// this.$store.state.goodslist = this.$store.state.goodslist.splice(i,1)
// console.log(i)
// }
},
deleteTap(u){
this.goods_id = item.goods_id
// if(this.Src.includes('select.png')){
// this.Src = '../../static/img/select1.png'
// }else{
// this.Src = '../../static/img/select.png'
// }
},
isAllTap(){
this.goods_id = ''
this.isAll=!this.isAll
if(this.Src.includes('select.png')&&this.isAll==true){
this.Src = '../../static/img/select1.png'
}else{
this.Src = '../../static/img/select.png'
}
},
removeL(e){
console.log(e.goods_id)
@ -121,7 +166,7 @@
// this.isDelete=!this.isDelete
// this.isAll=false
if(this.goodsList){
this.isAll=false
this.isAll= false
this.isDelete=!this.isDelete
}
}

8
pages/category/index.vue

@ -11,11 +11,11 @@
</navigator>
<view class="navigation_title_right">
<navigator url="/pages/account/wishlist">
<image src="../../static/img/like.png" mode=""></image>
<image src="../../static/img/like_white.png" mode=""></image>
</navigator>
<navigator url="/pages/shippingCart/index" open-type="switchTab">
<uni-badge :text="sum" type="error" absolute="rightTop">
<image src="../../static/img/shop_cart.png" mode=""></image>
<image src="../../static/img/shop_cart1.png" mode=""></image>
</uni-badge>
</navigator>
</view>
@ -265,14 +265,14 @@
}
.search{
width: 100%;
background-color:#fff;
background-color:#000;
box-sizing: border-box;
padding: 33.33rpx 26.67rpx;
position: fixed;
top: 0;
z-index: 99;
// border-bottom: 1px solid #F5F6FA;
border-bottom: 1px solid #F5F6FA;
.search1{
display: flex;

15
pages/category/productList.vue

@ -1,10 +1,10 @@
<template>
<view>
<uni-nav-bar :statusBar="true" :title="Pet" color="#000000" :border="false" :fixed="true">
<uni-nav-bar :statusBar="true" :title="Pet" color="#fff" backgroundColor="#000" :border="false" :fixed="true">
<block slot="left">
<view class="nav_left">
<image src="../../static/img/left.png" mode="" @click="back"></image>
<image src="../../static/img/seach1.png" mode="" @click="goPage()"></image>
<image src="../../static/img/left_white.png" mode="" @click="back"></image>
<image src="../../static/img/seach.png" mode="" @click="goPage()"></image>
</view>
</block>
@ -12,7 +12,7 @@
<view class="nav_right">
<navigator url="/pages/shippingCart/index" open-type="switchTab">
<uni-badge :text="sum" type="error" absolute="rightTop">
<image src="../../static/img/shop_cart.png" mode=""></image>
<image src="../../static/img/shop_cart1.png" mode=""></image>
</uni-badge>
</navigator>
</view>
@ -74,7 +74,7 @@
</view>
<view class="mask" @click="isCart=false" v-show="isCart"></view>
<view class="addCard" v-show="isCart">
<image src="/static/img/close1.png" mode="" class="addCard_close" @click="isCart=false"></image>
<image src="/static/img/close1.png" mode="" class="addCard_close" @click="isCart=false,goods_attr_list =[]"></image>
<scroll-view class="spike1 " scroll-x="true" :show-scrollbar="false">
<image :src="item.img_url" mode="" class="addCard_scroll" v-for="(item,index) in gallery_list" ></image>
</scroll-view>
@ -251,6 +251,8 @@
console.info(res,'购物车')
if(res.error==0){
if(res.data[0].success){
this.goods_attr_list =[]
this.cartQuery.goods_attr_id = ''
setTimeout(() =>{
uni.showToast({
title:'Successfully added',
@ -258,7 +260,7 @@
})
},500)
this.isCart = false
}
else{
uni.showToast({
@ -275,6 +277,7 @@
url:'../login/index'
})
}
},
gotoCart(item){
this.goods_attr_list =[]

1
pages/index/flashSale.vue

@ -273,6 +273,7 @@
if(res.error==0){
if(res.data[0].success){
this.cartQuery.goods_attr_id = ''
uni.showToast({
title:'Successfully added',
icon:'none'

179
pages/index/index.vue

@ -279,6 +279,24 @@
</view>
</view>
<!-- //广 -->
<view style="bottom:0">
<!-- <button @click="open">打开弹窗</button> -->
<uni-popup ref="popup" :mask-click="false">
<view class="Popup">
<view class="popup_close">
<image mode=" " @click="close" src="../../static/img/close2.png"></image>
</view>
<view class="popup_img" >
<text v-if="countdownTime">{{countdownTime }}</text>
<image :src="popImg" mode=" " @click="popImgto"></image>
</view>
</view>
<!-- <button @click="close">关闭</button> -->
</uni-popup>
</view>
</view>
</template>
@ -320,7 +338,10 @@
//
leftH: 0,
rightH: 0,
isbest:0
isbest:0,
popImg:'',
countdownTime: 6,
popUrl:''
}
},
onPullDownRefresh() {
@ -337,12 +358,22 @@
onLoad() {
this.getIndex()
// console.info(this.curEndTime)
// //console.info(this.curEndTime)
this.getList()
this.getMes()
this.getPullMes()
this.getInfo()
setTimeout( () =>{
this.open()
},1000)
},
created() {
this.getPullMes()
this.getCountdownTime()
},
onShow() {
this.getList()
this.getMes()
this.sum=0
@ -391,6 +422,79 @@
methods: {
open() {
this.$refs.popup.open('center')
},
close() {
if(this.countdownTime == 0){
this.$refs.popup.close()
}
uni.setTabBarStyle({
backgroundColor: "#fff",
borderStyle: "black",
// selectedColor: "#999",
// color: "#999",
});
},
//广
getPullMes(){
let data={_action:'getpagedata',pagecode:'001-STARTPAGE'}
defaultRequest(data).then( res =>{
console.log(res.data.zones)
let img
let url
if(res.error == 0){
res.data.zones.map( item =>{
if(item.zone_code == "KAIPIN"){
img = item.blocks[0].block_pic
url = item.blocks[0].block_link
}
})
console.log(img)
this.popImg = img
this.popUrl = url
}
})
},
//5
getCountdownTime() {
// uni.hideTabBar();
uni.setTabBarStyle({
backgroundColor: "#ccc",
borderStyle: "black",
// selectedColor: "#999",
// color: "#999",
});
this.countdownTime = 6
let timer = setInterval(() => {
this.countdownTime--;
if (this.countdownTime < 1) {
clearInterval(timer)
this.countdownTime = 0
// uni.redirectTo({
// url:'inde'
// })
}
}, 1000)
},
//gaogaoye
popImgto(){
const i = this.popUrl.indexOf('?')
if(this.popUrl.includes('dope.dope://?goodslist=1')){
const url = this.popUrl.substring(i)
console.log(url)
uni.navigateTo({
url:'/pages/category/productList'+url
})
}
},
//
getIndex(){
let data={_action:'getpagedata',pagecode:'HOME'}
@ -398,23 +502,23 @@
if(res.error==0){
this.indexDate=res.data
console.log(this.indexDate,'首页配置')
//console.log(this.indexDate,'')
res.data.zones.map(item=>{
if(item.zone_code=='ICON'){
item.content=''
this.info.push(item)
console.log(item,'info')
//console.log(item,'info')
}
if(item.zone_code=='LIST1'){
// this.bestlist.push(item.blocks)
// console.log(this.bestlist,'')
// //console.log(this.bestlist,'')
this.isbest = 1
this.getCatList()
item.blocks.map( item =>{
this.bestlist.push(item)
})
console.log(item,'精品')
//console.log(item,'')
}
})
@ -423,7 +527,7 @@
defaultRequest({
_action:'getpagedata',pagecode:'HOMECLASS'
}).then(res =>{
// console.log(res)
// //console.log(res)
if(res.error ==0){
this.scrollList = res.data.zones
}
@ -457,7 +561,7 @@
}
defaultRequest(data).then(res =>{
// console.log(res,'')
// //console.log(res,'')
res.data.zones.map(item =>{
if(item.zone_code =='XIAOXI'){
let list = item
@ -472,7 +576,7 @@
let data={_action:'getcartgoods'}
defaultRequest(data).then(res=>{
// console.info(res.data.goods_list.length,'//////')
// //console.info(res.data.goods_list.length,'//////')
if(res.error==0){
this.sum = res.data.goods_list.length
}
@ -522,7 +626,7 @@
_action:'getinfo'
}
defaultRequest(data).then(res =>{
console.log(res,'用户信息')
//console.log(res,'')
if(res.error == -1){
uni.setStorageSync('isLogin',0)
}else if(res.error==0){
@ -534,7 +638,7 @@
getCatList(type){
if(this.isbest ==1){
defaultRequest4(this.catQuery).then(res=>{
console.info(res,'最好的')
//console.info(res,'')
if(res.error==0){
if(res.data){
@ -545,14 +649,14 @@
goodid:item.id
})
})
console.log(this.bestlist,'合并')
//console.log(this.bestlist,'')
const that = this
this.bestlist.forEach(res => {
//
uni.getImageInfo({
src: res.block_pic,
success: (image) => {
// console.log(res.block_pic)
// //console.log(res.block_pic)
//
let showH = (50 * image.height) / image.width
//
@ -587,7 +691,7 @@
const a = url.substring(12);
const b = url.substring(url.length - 3)
console.log(a)
//console.log(a)
uni.navigateTo({
url:"../category/productList?typethree="+b+'&type=0'+'&title='+item.block_title
// url:"../category/productList"+ a +'&title='+item.block_title
@ -610,7 +714,7 @@
if(item.zone_code=='ICON'){
item.content=''
this.info.push(item)
console.log(item,'info')
//console.log(item,'info')
}
})
@ -626,11 +730,11 @@
},
// //
imgTo(item){
console.log(item,'item')
//console.log(item,'item')
let goodid
if(item.block_link){
goodid = item.block_link.substring(12);
console.log(item.block_link)
//console.log(item.block_link)
if(goodid.includes('goodslist')){
uni.navigateTo({
url:'../category/productList'+ goodid
@ -648,7 +752,7 @@
}
},
Hotgoto(item1){
console.log(item1[0].block_title + item1[0].block_link)
//console.log(item1[0].block_title + item1[0].block_link)
const url = item1[0].block_link.substring(12)
if(url.includes('goodslist')){
uni.navigateTo({
@ -666,7 +770,7 @@
this.isScrollShow=true
}else if(res.scrollTop<40){
this.isScrollShow=false
console.log('ppppp')
}
},
@ -1234,4 +1338,41 @@
.left{margin-right: 2%;}
.left image,
.right image{width: 100%;margin-bottom: 10rpx;margin-top: 20rpx;}
.Popup{
height: 700rpx;
width: 400rpx;
.popup_close{
height: 50rpx;
width: 50rpx;
margin-left: 400rpx;
// background-color: #000000;
image{
width: 100%;
height: 100%;
}
}
.popup_img{
height: 600rpx;
width: 400rpx;
margin-top: 10rpx;
margin-left: 20rpx;
color:red;
background-color: white;
border-radius:25rpx;
image{
width: 100%;
height: 100%;
border-radius: 25rpx;
position: relative;
}
text{
right:0;
position: absolute;
z-index:99;
}
}
}
</style>

38
pages/login/index.vue

@ -5,7 +5,11 @@
<view class="body">
<view class="login" v-show="current==0">
<input type="text" class="login_input" placeholder="eamil address" v-model="loginDate.username" @input="verificationLogin">
<input type="text" class="login_input" placeholder="password" v-model="loginDate.password" @input="verificationLogin">
<view class="login_input1">
<input :password="!tag" class="login_input1_text"placeholder="password" v-model="loginDate.password" @input="verificationLogin">
<image :src="eye" mode ="" class="see login_see" @click="seePwd"></image>
</view>
<view class="tips" v-show="loginErr">{{errMsg}}</view>
<view class="forgot" @click="forgotPwd">Forgot your Password?</view>
<button class="login_submit" :disabled="isLogin" @click="login()">SIGN IN</button>
@ -21,14 +25,18 @@
<view class="login" v-show="current==1">
<input type="text" class="login_input" placeholder="name" @input="verificationReg" v-model="regDate.username">
<input type="text" class="login_input" placeholder="eamil address" @input="verificationReg" v-model="regDate.email">
<input type="text" class="login_input" placeholder="password" @input="verificationReg" v-model="regDate.password1">
<!-- <input type="text" class="login_input" placeholder="password" @input="verificationReg" v-model="regDate.password1"> -->
<view class="login_input1">
<input :password="!tag" class="login_input1_text"placeholder="password" v-model="regDate.password1" @input="verificationReg">
<image :src="eye" mode ="" class="see login_see" @click="seePwd"></image>
</view>
<view class="tips" v-show="regErr">{{errMsg}}</view>
<button class="login_submit" :disabled="isReg" @click="Reg()">REGISTER</button>
<view class="agreement">
<image src="../../static/img/select2.png" mode="" class="agreement_image" @click="regSelect=!regSelect" v-show="!regSelect"></image>
<image src="../../static/img/select1.png" mode="" class="agreement_image" @click="regSelect=!regSelect" v-show="regSelect"></image>
<view class="agreement_right">
by continuong, you agree to be <text class="text"@click="gotonewpage(2)" > terms of use </text> and <text class="text" @click="gotonewpage()"> privacy policy</text>.
by continuong, you agree to be <text class="text"@click="gotonewpage(1)" > terms of use </text> and <text class="text" @click="gotonewpage(2)"> privacy policy</text>.
</view>
</view>
</view>
@ -56,6 +64,8 @@
return {
items: ['SIGN IN', 'REGISTER'],
current: 0,
tag:false,
eye:'../../static/icon/eye_close.png',
loginDate:{
username:'',
password:'',
@ -98,6 +108,15 @@
// return true;
// },
methods:{
seePwd(){
this.tag = !this.tag;
if(this.eye.includes('open')){
this.eye = '../../static/icon/eye_close.png'
}else{
this.eye ='../../static/icon/eye_open.png'
}
},
forgotPwd(){
if(this.loginDate.username==''){
uni.showToast({
@ -216,7 +235,11 @@
})
}
else{
var urlStr = encodeURI("https://dopeplus.com/help/Terms.html")
// plus.runtime.openURL(urlStr);
uni.navigateTo({
url:'../order/paypalWebview?src='+urlStr
})
}
@ -234,6 +257,13 @@
.login_body{
padding-top: 145.33rpx;
}
.see{
height: 30rpx;
width: 30rpx;
margin-top: 36rpx;
float: right;
}
.select{
margin-bottom: 80rpx;
font-size: 33.33rpx;

26
pages/order/confirmation.vue

@ -32,7 +32,7 @@
</view>
</view>
<view class="method" v-if="shipping_list">
<view class="method">
<view class="method_title">Shipping Method</view>
<view class="method_item" v-for="(item,index) in shipping_list " :key="index">
@ -224,6 +224,7 @@
order:{},
// : 0 1 2 4
pay_index:0,
tag:0,
}
},
@ -355,6 +356,7 @@
defaultRequest3(data,'consignee').then(res=>{
console.info(res)
if(res.error==0){
this.tag = 1
this.total=res.data.total
this.order=res.data.order
}
@ -362,12 +364,14 @@
},
getList(){
defaultRequest3(this.query,'consignee').then(res=>{
console.log(this.query)
console.info(res)
if(res.error==0){
this.orderDate=res.data
this.address=res.data.consignee
this.goods_list=res.data.goods_list
this.shipping_list=res.data.shipping_list
console.info(res.data.shipping_list,'1111')
if(res.data.bonus_list){
this.bonus_list=res.data.bonus_list
}
@ -403,16 +407,23 @@
return
}
}else{
if(!this.address){
if(!this.address&&this.tag==1){
uni.showToast({
icon:'none',
title:'please add address'
})
}else{
this.isShow=true
}
else if(this.tag ==0){
uni.showToast({
icon:'none',
title:'please select shipping method'
})
}
else{
this.isShow=true
}
}
// this.isShow=true
}
},
onLoad(e) {
@ -425,11 +436,12 @@
this.getList()
uni.$once('query' ,(query)=>{
console.info(query)
if(query.type=='address'){
if(query.type=='address'){
this.query.consignee=query.consignee
this.query.is_new=0
console.log(this.query)
this.getList()
}
}
});
},
filters:{

137
pages/productDetails/index.vue

@ -191,27 +191,45 @@
</view>
</view>
<view class="order_popup" v-show="isAttr&&Attr_list.length">
<view class="order_popup" v-show="isAttr">
<view class="order_popup_title">
<text>Details</text>
<image src="../../static/img/close1.png" mode="" @click="isAttr=false"></image>
</view>
<view >
<!-- <view class="securityDetails_item_title">{{item.product_sn}}</view> -->
<scroll-view scroll-y="true" class="descriptionDetails" >
<!-- <scroll-view scroll-y="true" class="descriptionDetails" > -->
<view v-for="(item,index) in Attr_list" :key="item.attr_value" class="text1">
<view ><text style="font-weight: bold;">Color : </text> <text class="text1_left">{{ item.attr_value}}</text></view>
<view>Power Suppy : <text class="text1_left">No</text></view>
<view >Type :</view>
<view>Length: </view>
</view>
</scroll-view>
</view>
<scroll-view scroll-y="true" class="text1">
<view class="text1_item">
<view class="text1_left"><text>Color</text> </view>
<view class="text1_right" ><text>{{ Attr_list }}</text></view>
</view>
<view class="text1_item">
<view class="text1_left"><text>Power Suppy</text> </view>
<view class="text1_right"><text>No</text></view>
</view>
<view class="text1_item">
<view class="text1_left"><text>Type</text> </view>
<view class="text1_right" v-if="goodsDate.cat_name" >{{ goodsDate.cat_name}}</view>
</view>
<view class="text1_item">
<view class="text1_left"><text>Length</text> </view>
<view class="text1_right" v-if="Size_list " >{{Size_list }}</view>
</view>
<!-- <view>Power Suppy <text>No</text></view>
<view>Type</view>
<view>Length</view> -->
<!-- <view class="text1_right">
<view>{{ Attr_list }}</view>
<view class="text_right">No</view>
<view v-if="goodsDate.cat_name">{{ goodsDate.cat_name}}</view>
<view>{{ Size_list }}</view>
</view> -->
</scroll-view >
<!-- </scroll-view> -->
</view>
<view class="reviews">
<view class="goods_title" @click="goReview">
@ -445,7 +463,8 @@
district:0,
city:0
},
shipping_list:[]
shipping_list:[],
Size_list:''
}
@ -570,6 +589,7 @@
defaultRequest2(this.cartQuery).then(res=>{
if(res.error==0){
this.isCart = false
this.cartQuery.goods_attr_id = ''
if(res.data[0].success){
setTimeout( ()=>{
uni.showToast({
@ -748,7 +768,7 @@
getDate(){
defaultRequest(this.query).then(res=>{
if(res.error==0){
console.log(res.data)
console.log(res.data,'222')
this.goodsDate=res.data
this.goodsDate.gallery_list.map(item=>{
item.content=''
@ -759,18 +779,38 @@
})
if(this.goodsDate.attr_list){
this.Is_attr = this.goodsDate.attr_list[0].goods_attrs.length
console.log(this.goodsDate.attr_list,'////S')
this.Is_attr = this.goodsDate.attr_list.length
if(this.Is_attr>0){
this.Attr_list = this.goodsDate.attr_list[0].goods_attrs
// //console.log(this.Attr_list,'hats')
}
let Size_list
let Attr_list
this.goodsDate.attr_list.map(item=>{
if(item.attr_name=="Color"){
this.colorNum=item.goods_attrs.length
console.log(this.colorNum)
Attr_list = item.goods_attrs
Attr_list.map( item =>{
this.Attr_list +=item.attr_value + ','
})
this.Attr_list= this.Attr_list.substring(0, this.Attr_list.length-1)
}
else if(item.attr_name=="Size"){
Size_list = item.goods_attrs
Size_list.map( item =>{
this.Size_list +=item.attr_value + ' '
})
this.Size_list= this.Size_list.substring(0, this.Size_list.length-1)
}
let data={name:item.attr_name,goods_attr_id:'',attr_id:item.attr_id,list:item.goods_attrs}
this.goods_attr_list.push(data)
})
}
}else{
this.goods_attr_list=[]
this.Is_attr = 0
@ -935,23 +975,54 @@
border-radius: 25rpx;
}
}
.descriptionDetails{
max-height: 700rpx;
min-height: 300rpx;
.text1{
width: 100%;
min-height: 300rpx;
max-height:400rpx;
padding-left: 54.67rpx;
// padding-left: 54.67rpx;
padding-top: 30.67rpx;
padding-right: 45.33rpx;
line-height: 50rpx;
text-align: start;
font-size: 25rpx;
color: #999999;
// padding-right: 45.33rpx;
// line-height: 50rpx;
// text-align: start;
// font-size: 25rpx;
// color: #999999;
.text1_item{
display: flex;
width: 100%;
flex-direction: row;
height: 60rpx;
line-height: 50rpx;
text-align: start;
text{
word-wrap: wrap;
}
.text1_left{
width:200rpx;
// background-color:red;
height: 50rpx;
color:#999;
font-size:28rpx;
line-height: 50rpx;
text-align: start;
padding-left:33.27rpx;
margin-left: 27.33rpx;
}
.text1_right{
width:400rpx;
color:#000;
font-size:28rpx;
// background-color:green;
line-height:50rpx;
margin-left:60rpx;
word-wrap:wrap;
}
}
}
// .description_item{
@ -967,7 +1038,7 @@
// }
// }
}
.securityDetails{
padding-top: 50.67rpx;
// padding-bottom: 120rpx;

2
pages/productDetails/review.vue

@ -19,7 +19,7 @@
<view class="left_info_bottom">
<view class="info_lable" v-if="item.goods_attr">
<text>{{item.goods_attr |goodsAttr}}</text>
<image src="/static/img/bottom.png" mode=""></image>
<!-- <image src="/static/img/bottom.png" mode=""></image> -->
</view>
</view>
</view>

16
pages/shippingCart/index.vue

@ -164,7 +164,7 @@
<!-- 规格弹出层 -->
<view class="mask" @click="isCahnge=false" v-show="isCahnge"></view>
<view v-show="isCahnge" class="addCard">
<image src="/static/img/close1.png" mode="" class="addCard_close" @click="isCahnge=false"></image>
<image src="/static/img/close1.png" mode="" class="addCard_close" @click="isCahnge=false,goods_attr_list = []"></image>
<!-- <view class="change_img"><image :src="Attr_img" mode=""></image></view> -->
<scroll-view class="spike1" scroll-x="true" >
<image :src="item.img_url" mode="" class="addCard_scroll" v-for="(item,index) in gallery_list" ></image>
@ -560,11 +560,16 @@
}));
console.log(res)
if (res[0].error == 0) {
setTimeout( () =>{
uni.showToast({
icon: 'none',
title: 'ok!'
})
})
},1000)
this.outlist = []
this.getList()
uni.startPullDownRefresh()
}
@ -605,6 +610,8 @@
//
ChangeAttr(item) {
console.log(item)
this.goodsDate =[]
this.gallery_list = []
this.deleteQuery.rec_id = item.rec_id
this.addQuery ={
_action:'addtocart',
@ -615,6 +622,7 @@
goods_is_package:0
}
this.goods_attr_list = []
this.str_select =[]
this.Attr_img = item.goods_thumb
this.num = item.goods_number
@ -697,12 +705,12 @@
})
console.log(this.addQuery)
let tag = 0
defaultRequest(this.deleteQuery).then(res =>{
defaultRequest4(this.deleteQuery).then(res =>{
console.log(res)
if(res.error==0){
tag = 1
// setTimeout(() =>{
defaultRequest(this.addQuery).then(res =>{
defaultRequest4(this.addQuery).then(res =>{
if(res.error ==0){
this.getList()
this.isCahnge = false

BIN
static/icon/close.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
static/icon/deleteok.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

BIN
static/icon/eye_close.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
static/icon/eye_open.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 891 B

BIN
static/img/left_white.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 512 B

BIN
static/img/search_white.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

3
store/store.js

@ -10,8 +10,7 @@ const store = new Vuex.Store({
},
mutations: {
addSave(state, data) {
let str = [];
str.push(data);
let str = data
console.log(data)
state.goodslist.push(str)
},

Loading…
Cancel
Save