From 3f4ce7e08abff7e703ff51dac30ee69f8ecc7a6d Mon Sep 17 00:00:00 2001 From: jinna Date: Tue, 22 Aug 2023 16:32:48 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=AE=A2=E5=8D=95=E8=AF=A6?= =?UTF-8?q?=E6=83=85=E4=B8=8E=E6=B7=BB=E5=8A=A0=E5=9C=B0=E5=9D=80=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- manifest.json | 6 + package-lock.json | 13 + package.json | 25 +- pages.json | 20 +- pages/pages_zhentou/myPage/address.vue | 306 +++++++++++++++++- pages/pages_zhentou/order/checkOrder.vue | 9 +- pages/pages_zhentou/order/express.vue | 260 +++++++++++++++ pages/pages_zhentou/order/order.vue | 8 +- static/image/cancel.png | Bin 0 -> 569 bytes static/image/position.png | Bin 0 -> 1661 bytes uni_modules/uni-transition/changelog.md | 20 ++ .../uni-transition/createAnimation.js | 128 ++++++++ .../uni-transition/uni-transition.vue | 277 ++++++++++++++++ uni_modules/uni-transition/package.json | 87 +++++ uni_modules/uni-transition/readme.md | 11 + 15 files changed, 1152 insertions(+), 18 deletions(-) create mode 100644 package-lock.json create mode 100644 pages/pages_zhentou/order/express.vue create mode 100644 static/image/cancel.png create mode 100644 static/image/position.png create mode 100644 uni_modules/uni-transition/changelog.md create mode 100644 uni_modules/uni-transition/components/uni-transition/createAnimation.js create mode 100644 uni_modules/uni-transition/components/uni-transition/uni-transition.vue create mode 100644 uni_modules/uni-transition/package.json create mode 100644 uni_modules/uni-transition/readme.md diff --git a/manifest.json b/manifest.json index caec9e2..b114458 100644 --- a/manifest.json +++ b/manifest.json @@ -88,6 +88,11 @@ "appid" : "wx432c2efe6df3b97a", "UniversalLinks" : "" } + }, + "geolocation" : { + "system" : { + "__platform__" : [ "ios", "android" ] + } } }, "orientation" : [ "portrait-primary" ] @@ -127,6 +132,7 @@ "desc" : "演示定位能力" } }, + "requiredPrivateInfos" : [ "getLocation" ], "uniStatistics" : { "enable" : true } diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..304f07b --- /dev/null +++ b/package-lock.json @@ -0,0 +1,13 @@ +{ + "name": "hello-uniapp", + "version": "3.4.4", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "uview-ui": { + "version": "2.0.36", + "resolved": "https://registry.npmmirror.com/uview-ui/-/uview-ui-2.0.36.tgz", + "integrity": "sha512-ASSZT6M8w3GTO1eFPbsgEFV0U5UujK+8pTNr+MSUbRNcRMC1u63DDTLJVeArV91kWM0bfAexK3SK9pnTqF9TtA==" + } + } +} diff --git a/package.json b/package.json index 8c806f5..79a4d2e 100644 --- a/package.json +++ b/package.json @@ -9,18 +9,20 @@ }, "repository": "https://github.com/dcloudio/hello-uniapp.git", "keywords": [ - "hello-uniapp", - "uni-app", - "uni-ui", - "示例工程" - ], + "hello-uniapp", + "uni-app", + "uni-ui", + "示例工程" + ], "author": "", "license": "MIT", "bugs": { "url": "https://github.com/dcloudio/hello-uniapp/issues" }, "homepage": "https://github.com/dcloudio/hello-uniapp#readme", - "dependencies": {}, + "dependencies": { + "uview-ui": "^2.0.36" + }, "dcloudext": { "category": [ "前端页面模板", @@ -84,15 +86,14 @@ "快应用": { "华为": "y", "联盟": "y" - }, - "Vue": { - "vue2": "y", - "vue3": "y" - } + }, + "Vue": { + "vue2": "y", + "vue3": "y" + } } } }, - "uni-app": { "scripts": { "mp-dingtalk": { diff --git a/pages.json b/pages.json index e7e1a72..0a10765 100644 --- a/pages.json +++ b/pages.json @@ -127,6 +127,22 @@ } } }, + { + "path": "pages/pages_zhentou/order/express", + "style": { + "navigationBarTitleText": "物流信息", + "app-plus": { + "titleNView": { + // "buttons": [{ + // "text": "\ue534", + // "fontSrc": "/static/uni.ttf", + // "fontSize": "22px", + // "color": "#FFFFFF" + // }] + } + } + } + }, { "path": "pages/pages_zhentou/contact/contact", "style": { @@ -143,7 +159,7 @@ } } } - ], + ], // "subPackages": [{ // "root": "pages/API", // "pages": [{ @@ -257,4 +273,4 @@ // } // ] // } -} +} \ No newline at end of file diff --git a/pages/pages_zhentou/myPage/address.vue b/pages/pages_zhentou/myPage/address.vue index c610089..2281ec3 100644 --- a/pages/pages_zhentou/myPage/address.vue +++ b/pages/pages_zhentou/myPage/address.vue @@ -29,7 +29,74 @@ -

添加新地址

+

添加新地址

+
+ + + + + + 新增地址 + + + + + + + + + 收货人: + + + 张三 + + + + + 联系电话: + + + 15612345678 + + + + + 位置: + + + + + + {{province}} / {{city}} {{district ? '/' : ''}} {{district}} + + + 请选择地区 + + + + + + 详细地址: + + + 大港街道大港三路8号铁路住宅小区6号楼大港街道大港三路8号铁路住宅小区6号楼 + + + + + + + +

删除

+

保存

+
+
+
@@ -37,14 +104,25 @@ diff --git a/pages/pages_zhentou/order/express.vue b/pages/pages_zhentou/order/express.vue new file mode 100644 index 0000000..2e4c451 --- /dev/null +++ b/pages/pages_zhentou/order/express.vue @@ -0,0 +1,260 @@ + + + + + \ No newline at end of file diff --git a/pages/pages_zhentou/order/order.vue b/pages/pages_zhentou/order/order.vue index e73b9f1..f16af87 100644 --- a/pages/pages_zhentou/order/order.vue +++ b/pages/pages_zhentou/order/order.vue @@ -48,7 +48,7 @@

699.0

-

查看物流

+

查看物流

确认收货

取消订单

立即支付

@@ -85,6 +85,12 @@ this.loadMore(); }, methods: { + // 查看物流 + handleWuliu(){ + uni.navigateTo({ + url:"/pages/pages_zhentou/order/express" + }) + }, loadMore() { if (this.hasMore) { this.current = this.current + 1; diff --git a/static/image/cancel.png b/static/image/cancel.png new file mode 100644 index 0000000000000000000000000000000000000000..815a6288d4d4391951627f49826e7166b4dace9b GIT binary patch literal 569 zcmV-90>=G`P)Px$^GQTOR9Hvtm%B~_F%U(s7YXQ~f-gcsfCvdc02FI)ekgW9Ma@g%5yT%s0UZG; z8RW<-ZC1(3uSJP)+Suc>ckYZm3@i3yE5?fi+;+y2!b#zp0?87|6938)QpzjF*d7sG z2qB(A(yx>{1aJvp$T>f=jpbByN~uo(TL6BDsOt+o7z~cGEV~A^uRQ(teHW;`L4PZn>$3lqLx^+xv z>9`cwyh8N0L^W7d=@J^iTG>%FEPx*8{L!`>ELs-@SO>56Rsdh7J~m^*MzKVL()zDx z$_BNyMd_+pW4VEAmKd3jnp$EqnVc3y@eu0YXqKqAH+_Q{xal<>(;C4=HxIUKUDX~O z`e2IU;U?JffTg)OY+&1f_OgU|B3iv8VnaIvhoo5VWsKe1JeZ=~bRn=MfU%OEHp(HO zljr%&gQ=_$RL+E%sKJWMYPNPvB=ud`FTNT<| z=cI6(Ahxj+u&q+Q>ypC0%GvHq3fn5>yDlm0tDNn=l~ec^MmR@2wOtKC00000NkvXX Hu0mjfEt&d$ literal 0 HcmV?d00001 diff --git a/static/image/position.png b/static/image/position.png new file mode 100644 index 0000000000000000000000000000000000000000..78d31bda414ec36cd4a844d8e6a04f4e80807bac GIT binary patch literal 1661 zcmV-@27>vCP)Px*H%UZ6R9Hvtm|tiVR}{v-b7zyR)w?SfrsJ}12w_rw~OSP zAX){+G5|{e8Uo}XGj;J){B%tuGX5~se<0xgy1Gi~^R)rgl!9T#Fo6>cloC;?`<|I& zg3&$_`}d26p`rMLfENrLHH>W%bbtUKfDTCK*k~+vE*+?+u5MY8&$k{xD?k;@Jg7K{ zbydB+R||zM2sok#KL=qqz=KF&v)XH3x*tF%;49Ph_a%uoFpvAdYbq_Prx578fuowX zg@tky;7c+d-%t~YjO1!KqU&n`I>kie9G}qhnVYha7qEN8KE)RWD8`c$D+@8$S8r@0 zg^q*y7u7O1=DOK}fFpYF5D42LoeipOcVrst*R+=%63rkiB4AK)oTHUJJ%49@7cqjT z05mx)SJqlqcRtWLD;!qUMZ&*e49sEGGFPS>aeee@!}y*+Eg8n+#Bx)>vVKi}-)9&V z1R4PNgld|b=L9&SX-yEyDM+-cc4&XPk%+E;1UI0-XBgOd-86@m>iQaxI1Zqc!L`+< zIXHVx&|+|TwPh}z6X2*}e952>khoo|_V$KTMqG858o_@UxN+SK)iwZ$)YuhWU!jn= z48~#A3cWi^Wj(l$2)i=Z^McRWC8CCLgh4GbKJj?^t<_swTjeV%jxwXI+6sM~X|PWZ zUL)dR)ihVn2G+L|i9?Qb8ftC3%L_E`po{3n&md}6&Csk(Mm4RRh4L4HzY3V0@EdXc2;rFw3{9E$ie%2af8-w@kEyr1M9%rqi7WNSIz^%1?h$lbLE;B6cY|qnTyl?-b?A6fji5~{Y#&C@*0D0RGVfXb75C8DQNed z+9EmZ7D6l&8*6%cE~I~-3Pu7S4VdQJUXTST>`qD@BT1(vVB5#;hStg%%6bx9>M&m& zyLGE0TXoi_8)u2AQA$Uzv2AfT9> z0Pj#u^I)#?3ijdD#OcDk$YN&S6iYo9rBWwD%;y4@`FbI+1uN`M?5i^x$wy}agk^kU z_5FIbWECfrE-*$4Elcyh>9Q#@llMVy~+48BSY30R2xkx}M65No_C6Uc$-ahOW zJI`p^OAaZkKwLwhW&nO>K2U9$@6Eb?Rke)#3pxp?0`s2$oo8Yjj&q^9r>CzFx5ycI zAQ)UeCApO-3AiM~nA-{a!Pu)>p-~=) z)q-0j@c|-Qlx*1v9gdWL0O%fz#rmIGxX>p`7W@u^CL~%DQxiW@vHvUydIjKi)iigy zDXoaPMvyNE!ESH2cKT#6tgzEuW!vt0o{uN+OuzsTj9nwQZXV2bdxg`E-&K!@D(-jn zcE1>0vhXpv4cyL+c4V)5oP9_q}9DhbG3!5i7LOtFVdahU+$K3A{aE zn%{Xz>p^!!z%*d^0`9mx$@4Gdb~7E`j#IwS>EX+sjF!6+~1?Km{j%vyu5UMLgK-1I zF>(uera_SGn`G|JC+}v8l9$3>e)%ZI=Yi*1<#~nYTH*fysY~-qE}%pG00000NkvXX Hu0mjf-(woV literal 0 HcmV?d00001 diff --git a/uni_modules/uni-transition/changelog.md b/uni_modules/uni-transition/changelog.md new file mode 100644 index 0000000..b1a824b --- /dev/null +++ b/uni_modules/uni-transition/changelog.md @@ -0,0 +1,20 @@ +## 1.3.1(2021-11-23) +- 修复 init 方法初始化问题 +## 1.3.0(2021-11-19) +- 优化 组件UI,并提供设计资源,详见:[https://uniapp.dcloud.io/component/uniui/resource](https://uniapp.dcloud.io/component/uniui/resource) +- 文档迁移,详见:[https://uniapp.dcloud.io/component/uniui/uni-transition](https://uniapp.dcloud.io/component/uniui/uni-transition) +## 1.2.1(2021-09-27) +- 修复 init 方法不生效的 Bug +## 1.2.0(2021-07-30) +- 组件兼容 vue3,如何创建 vue3 项目,详见 [uni-app 项目支持 vue3 介绍](https://ask.dcloud.net.cn/article/37834) +## 1.1.1(2021-05-12) +- 新增 示例地址 +- 修复 示例项目缺少组件的 Bug +## 1.1.0(2021-04-22) +- 新增 通过方法自定义动画 +- 新增 custom-class 非 NVUE 平台支持自定义 class 定制样式 +- 优化 动画触发逻辑,使动画更流畅 +- 优化 支持单独的动画类型 +- 优化 文档示例 +## 1.0.2(2021-02-05) +- 调整为 uni_modules 目录规范 diff --git a/uni_modules/uni-transition/components/uni-transition/createAnimation.js b/uni_modules/uni-transition/components/uni-transition/createAnimation.js new file mode 100644 index 0000000..5f54365 --- /dev/null +++ b/uni_modules/uni-transition/components/uni-transition/createAnimation.js @@ -0,0 +1,128 @@ +// const defaultOption = { +// duration: 300, +// timingFunction: 'linear', +// delay: 0, +// transformOrigin: '50% 50% 0' +// } +// #ifdef APP-NVUE +const nvueAnimation = uni.requireNativePlugin('animation') +// #endif +class MPAnimation { + constructor(options, _this) { + this.options = options + this.animation = uni.createAnimation(options) + this.currentStepAnimates = {} + this.next = 0 + this.$ = _this + + } + + _nvuePushAnimates(type, args) { + let aniObj = this.currentStepAnimates[this.next] + let styles = {} + if (!aniObj) { + styles = { + styles: {}, + config: {} + } + } else { + styles = aniObj + } + if (animateTypes1.includes(type)) { + if (!styles.styles.transform) { + styles.styles.transform = '' + } + let unit = '' + if(type === 'rotate'){ + unit = 'deg' + } + styles.styles.transform += `${type}(${args+unit}) ` + } else { + styles.styles[type] = `${args}` + } + this.currentStepAnimates[this.next] = styles + } + _animateRun(styles = {}, config = {}) { + let ref = this.$.$refs['ani'].ref + if (!ref) return + return new Promise((resolve, reject) => { + nvueAnimation.transition(ref, { + styles, + ...config + }, res => { + resolve() + }) + }) + } + + _nvueNextAnimate(animates, step = 0, fn) { + let obj = animates[step] + if (obj) { + let { + styles, + config + } = obj + this._animateRun(styles, config).then(() => { + step += 1 + this._nvueNextAnimate(animates, step, fn) + }) + } else { + this.currentStepAnimates = {} + typeof fn === 'function' && fn() + this.isEnd = true + } + } + + step(config = {}) { + // #ifndef APP-NVUE + this.animation.step(config) + // #endif + // #ifdef APP-NVUE + this.currentStepAnimates[this.next].config = Object.assign({}, this.options, config) + this.currentStepAnimates[this.next].styles.transformOrigin = this.currentStepAnimates[this.next].config.transformOrigin + this.next++ + // #endif + return this + } + + run(fn) { + // #ifndef APP-NVUE + this.$.animationData = this.animation.export() + this.$.timer = setTimeout(() => { + typeof fn === 'function' && fn() + }, this.$.durationTime) + // #endif + // #ifdef APP-NVUE + this.isEnd = false + let ref = this.$.$refs['ani'] && this.$.$refs['ani'].ref + if(!ref) return + this._nvueNextAnimate(this.currentStepAnimates, 0, fn) + this.next = 0 + // #endif + } +} + + +const animateTypes1 = ['matrix', 'matrix3d', 'rotate', 'rotate3d', 'rotateX', 'rotateY', 'rotateZ', 'scale', 'scale3d', + 'scaleX', 'scaleY', 'scaleZ', 'skew', 'skewX', 'skewY', 'translate', 'translate3d', 'translateX', 'translateY', + 'translateZ' +] +const animateTypes2 = ['opacity', 'backgroundColor'] +const animateTypes3 = ['width', 'height', 'left', 'right', 'top', 'bottom'] +animateTypes1.concat(animateTypes2, animateTypes3).forEach(type => { + MPAnimation.prototype[type] = function(...args) { + // #ifndef APP-NVUE + this.animation[type](...args) + // #endif + // #ifdef APP-NVUE + this._nvuePushAnimates(type, args) + // #endif + return this + } +}) + +export function createAnimation(option, _this) { + if(!_this) return + clearTimeout(_this.timer) + return new MPAnimation(option, _this) +} diff --git a/uni_modules/uni-transition/components/uni-transition/uni-transition.vue b/uni_modules/uni-transition/components/uni-transition/uni-transition.vue new file mode 100644 index 0000000..0d739bd --- /dev/null +++ b/uni_modules/uni-transition/components/uni-transition/uni-transition.vue @@ -0,0 +1,277 @@ + + + + + diff --git a/uni_modules/uni-transition/package.json b/uni_modules/uni-transition/package.json new file mode 100644 index 0000000..d15fdf0 --- /dev/null +++ b/uni_modules/uni-transition/package.json @@ -0,0 +1,87 @@ +{ + "id": "uni-transition", + "displayName": "uni-transition 过渡动画", + "version": "1.3.1", + "description": "元素的简单过渡动画", + "keywords": [ + "uni-ui", + "uniui", + "动画", + "过渡", + "过渡动画" +], + "repository": "https://github.com/dcloudio/uni-ui", + "engines": { + "HBuilderX": "" + }, + "directories": { + "example": "../../temps/example_temps" + }, + "dcloudext": { + "category": [ + "前端组件", + "通用组件" + ], + "sale": { + "regular": { + "price": "0.00" + }, + "sourcecode": { + "price": "0.00" + } + }, + "contact": { + "qq": "" + }, + "declaration": { + "ads": "无", + "data": "无", + "permissions": "无" + }, + "npmurl": "https://www.npmjs.com/package/@dcloudio/uni-ui" + }, + "uni_modules": { + "dependencies": ["uni-scss"], + "encrypt": [], + "platforms": { + "cloud": { + "tcb": "y", + "aliyun": "y" + }, + "client": { + "App": { + "app-vue": "y", + "app-nvue": "y" + }, + "H5-mobile": { + "Safari": "y", + "Android Browser": "y", + "微信浏览器(Android)": "y", + "QQ浏览器(Android)": "y" + }, + "H5-pc": { + "Chrome": "y", + "IE": "y", + "Edge": "y", + "Firefox": "y", + "Safari": "y" + }, + "小程序": { + "微信": "y", + "阿里": "y", + "百度": "y", + "字节跳动": "y", + "QQ": "y" + }, + "快应用": { + "华为": "u", + "联盟": "u" + }, + "Vue": { + "vue2": "y", + "vue3": "y" + } + } + } + } +} \ No newline at end of file diff --git a/uni_modules/uni-transition/readme.md b/uni_modules/uni-transition/readme.md new file mode 100644 index 0000000..2f8a77e --- /dev/null +++ b/uni_modules/uni-transition/readme.md @@ -0,0 +1,11 @@ + + +## Transition 过渡动画 +> **组件名:uni-transition** +> 代码块: `uTransition` + + +元素过渡动画 + +### [查看文档](https://uniapp.dcloud.io/component/uniui/uni-transition) +#### 如使用过程中有任何问题,或者您对uni-ui有一些好的建议,欢迎加入 uni-ui 交流群:871950839 \ No newline at end of file