From 061ad5222d4159fab3dfd13564bcd95195da2cfa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BB=B2=E4=B9=88=E4=BA=86?= Date: Mon, 13 Feb 2023 14:27:19 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=BE=E5=A4=87=E6=B3=A8=E5=86=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/css/base.scss | 6 +- pages/device/new.vue | 256 +++++++++++++++++- pages/mine/user.vue | 18 +- static/point.png | Bin 0 -> 5053 bytes uni_modules/uni-drawer/changelog.md | 13 + .../components/uni-drawer/keypress.js | 45 +++ .../components/uni-drawer/uni-drawer.vue | 183 +++++++++++++ uni_modules/uni-drawer/package.json | 87 ++++++ uni_modules/uni-drawer/readme.md | 10 + 9 files changed, 603 insertions(+), 15 deletions(-) create mode 100644 static/point.png create mode 100644 uni_modules/uni-drawer/changelog.md create mode 100644 uni_modules/uni-drawer/components/uni-drawer/keypress.js create mode 100644 uni_modules/uni-drawer/components/uni-drawer/uni-drawer.vue create mode 100644 uni_modules/uni-drawer/package.json create mode 100644 uni_modules/uni-drawer/readme.md diff --git a/common/css/base.scss b/common/css/base.scss index 9da937d..42665a2 100644 --- a/common/css/base.scss +++ b/common/css/base.scss @@ -36,7 +36,11 @@ page { padding-left: #{$i}rpx; } } - +.center{ + display: flex; + align-items: center; + justify-content: center; +} .hide-txt { overflow-x: hidden; white-space: nowrap; diff --git a/pages/device/new.vue b/pages/device/new.vue index a718963..a535f3d 100644 --- a/pages/device/new.vue +++ b/pages/device/new.vue @@ -1,19 +1,97 @@ @@ -23,10 +101,18 @@ export default { return { loading: false, code: '', - type: 1, + type: 2, formData: { address: '', }, + point: { + x: 170, + y: 100, + }, + pointName: '', + pointList: [], + activeGplot: 1, + editIndex: -1, } }, methods: { @@ -52,16 +138,75 @@ export default { } }); }, - submit(){ + chooseGplot () { + this.$refs.gplot.open() + }, + closeDrawer () { + this.pointName = '' + this.point = { + x: 170, + y: 100, + } + this.$refs.gplot.close() + this.$refs.point.close() + }, + add () { + this.$refs.point.open() + }, + addPoint () { + if (!this.pointName) { + this.$util.toast('请输入监测点名称') + return + } + if (this.editIndex > -1) { + this.pointList[this.editIndex] = { + x: this.point.x, + y: this.point.y, + pointName: this.pointName, + } + this.editIndex = -1 + } else { + let arr = this.pointList.filter(item => item.pointName == this.pointName) + if (arr.length > 0) { + this.$util.toast('监测点名称已存在') + return + } + this.pointList.push({ + x: this.point.x, + y: this.point.y, + pointName: this.pointName, + }) + } + console.log(this.pointList); + this.closeDrawer() + }, + deletePoint (index) { + this.pointList.splice(index, 1) + }, + editPoint (index) { + this.editIndex = index + this.point.x = this.pointList[index].x + this.point.y = this.pointList[index].y + this.pointName = this.pointList[index].pointName + this.$refs.point.open() + }, + dragPoint (e) { + console.log(e) + this.point.x = e.detail.x + this.point.y = e.detail.y + }, + submit () { this.$util.toast('提交成功') - uni.navigateBack({ delta: 1 }) + setTimeout(() => { + uni.navigateBack({ delta: 1 }) + }, 1500); }, } } \ No newline at end of file diff --git a/pages/mine/user.vue b/pages/mine/user.vue index 6253f60..1def9ba 100644 --- a/pages/mine/user.vue +++ b/pages/mine/user.vue @@ -5,13 +5,13 @@ @@ -33,6 +33,20 @@ export default { uni.navigateTo({ url: '/pages/mine/userDetail' }) + }, + del () { + console.log('del'); + uni.showModal({ + title: '提示', + content: '确定要移除该成员吗?', + success: function (res) { + if (res.confirm) { + console.log('用户点击确定') + } else if (res.cancel) { + console.log('用户点击取消') + } + } + }) } } } diff --git a/static/point.png b/static/point.png new file mode 100644 index 0000000000000000000000000000000000000000..b373cc00bcbf49cb9da281d933b372b972dd023a GIT binary patch literal 5053 zcmdT|=Q~_qw4NdnlF_4=5haM|T`)wC=q-fkZ3fXhqXkLyUW4d0dJse%y%S`VAW95I zC)%C-?w@c!-4EyN=Q-;+?^*A9*WPQL6{V@J1RT)bNKy=;pM3VfUZ?B4a$*(cO-Z<6|D}_YV)YQ~U6YXf0Kt;%$FZy+y`2~Gq*;PKG3;EUqbTNw{it}b6 ziUdn~!T|A$%tV+TAW*(BLJW%RXC%SD5{K?XZ~PNWl5h_Sti~scWbpAwg4$JdRq07! z+5&d=Q=h<~NSS3;E;gcjP)?fq`t30wu;-IASuzSo<(VC;k> z6RXS!A5WFRU2c+^nCGcE5?;`UNQ$9oowV)zQAhjgbuAmi6Nj6Py;Z9Qbs{_BevDv- zk}u=s&76Gh6Lxlyu{Rxvjn5JgQ{U}jU?ni!QA7pHr4nTb@;%%spE` zTk;TS#DR^#+8oU@{J za}O?dp0r9+*jcC)Wq}t!+8mDO0{veFV3)QV>P2#YoMh0LRB7v>_ZAUfhSm(eegC#fIrB6j+CBE?Q~ivtGP(#@=%DSL5$7+Z^8`IM-ZDQ-YuHTu;JN1pe`z0!$TP zZOWW(PT{6_>0-{qg^Isc$OdQVad*ahix|FfDt@-ucw%Yb6z#hpKha2JcVBtJz1q?& zrk3R~cTU$kj}9s96Kmo3d^kg=do>Vyr_grziaU}UH5$!PDcHOE&$D$?g)m+=t46O7 z;}o527hAdGBE_OcB*k#wLqGtVRwApe;1UJg(PM#^ywKRPMgr{0348MbjiKgsx}Hlm zNf6tmC7h*<%X3|`u#gb%6f_2(au-WnpW>axd2jzypm_);_Vj=p#3S%c8t!hDS}eT9 z=JIswe&n`3@WErJM?a~q2*0OTZf?RSH7pj!sp4GS2-3jc7WISE$@W4~N7)WHly{~J z9h-4`?@r@`m{D|%-I@O+VPcPChcE)%wn^yYSFJ<%jHgcfU%@vf*;~`k`zb&2+-M*Zbhh2%TdtMcpqoSnwaN^&?r2KpB<-+vnaiQu$z*U zW)5(8l5<#!C*K$etoM~`<4|pm)R0stcy;ZJ6no=}qYrExK3Jv;OKU_vNH$5Net74Z zzCK7$h9E?*=_r-siGYncP8aUhV!`KoCwpe0{1d9V0k6b@obiWr8su?!Y-hS8fk|cd zr*quoyz43Em2?B`)0SM0T@81v`Vm?3xlC}u(h^$pz;{stUAs$QP8H_Y@jFIX3~_Z-gx-SV_7gVX10X&*0YySBVny1y7;R zZH~zCZlct?wL7Q+D+Bgb9AmS>eb!5>yClz0kcE3$Wvv7dr!H<&8pKCJDYcf^t63Nf95}?Ws8@d?7|_o03$c zYCS-&1(1MM41+v&w$N&dt^8%*2Q|d(?iJxoIQ)J;=5P+k=to>8jnv(-bgt6Lt~zc8 z;yf3tYnCy(dRr!H2FkD%kuE%J!s1{IU1h9D$ozcxfqs%CQM;GFc9Jpt!L0Y0qZ*OJ zB6LBk!RtUlW<*A=PT3VtK8~fJh(93b;3zkO^P=l5GDXbubjRFkPq-MDemOTA?TYM2 zA50+$=U4{K3(J&7B>ih&%TJUqeMGJfRKo%E=e(%VYkPnXNaLRlhj72(;-bUc;O|~4 zTLkurmbRDAdDlK8aacs6K|lD;gZ#Z8F_TJ;OZ&7tZA#O-%*PDc-|x?}_KF?(XdvM# zOWC^vSW{9LK5II7KNslX2uzpq>Q-|`$0ZKwp*?=uS**D0X}IFz_^P;FI$&_RU6lNb zjP}#`U;|lq`L+bTLj&Rk&|zwK)}ocrqV9gXywKQV2~X2`77JYRpT5r7h!z!Pw}>s! zV>PeQ85q%P4sZm{I}>S)?9Qv984z5~DY^BIK3_QO@+@sT9_o&MImBgomUxzr)7XZ* zVV{a=2N71UXDQ#vL-CQ50&ZWQo)Z=g1)?}yf+esZa(!AvMa4Y096UnrDzFH&?+CS$ zJJp!vU5 znDz%}Y2!lX>A{8r%jc{CYlzQ55dO+z4mY>OoYQ5AlOj>5brVogy*QY2dMFgHVtw}f zrHXi7Ppp?O*rLT5koF5j9W`GC)*$uP8|sGaC?3M6R^s=NSG3=q?5V9HrP|T$AO$;< zeO((gsRaX@&JI!k5Fk)VWpjqIA&TY+1Uv*!M!$4;0WrwNy+!zaKOCN?KELhB&b^GY z85k%BhK~pGd{$puY)lQ=ZrtZUzu061Z|yPyhSGg}+A>mqf*bjD-C(q1pn45Jrg9y{ zbUUa4y)t~*Fk{~_UC|8tIYAevy+#FH5Y7Z`X(4Uh-s3wBzwqtI&@##GwHGnx37FOcevJT=R83sRIn-v~l^{H;=)pIZZ+r zc3md2=#1o~PgxN=J)?DS2(Eet-CbdEp{;OoY@et(LY0f%(U#XI|kz~+|XOC z>IOrf>NpWcE!z}6{01Dv?Cbu0qiJNVw(5>waGiDBZE+}~Vy#3kX`q_0Qd0j1qCC(> z7uNk*KyboCz`vx9m3J(8*(MUFn8-fhJW}2n-QP3ifEs0Fc-0(6F-aR|(cGMo9;?>R zy_#x2Zjec&71rt=|rYVVQ9Ga znkq@as~Ucjow;USr}9!ekr;E$%lr@l-Vhhx5k|wJkGa%gTSWcVQ0=Wcq3fejMp_*{ zx>V3{1NCWVjH>jf^zX9p)Zf~d^=6eo8m?9<@--_q5&AWu;tcpLe|xtMpXbkS^M=0@e_rKmpc_f=g;fdptQ z?RFD_J-F=OtA1EQra4^>YF-j*J>w18Y1sPW!7_hZ*}>38#L?=fc7ol9VwSaFcpvV4 zZMWH!rjq6St!jtc*Y2qTnlZf|T`W3tVt)etas#gH4XQ1gT?mg-_7#(S__56`*{!BD zvZMqPv~hCtCU|{6SPl=Rtj}koMr366fJ&DDM+CT@|2-5ANkJ3SgtY=NG*(ND zZiRnNUylG?#=zKYM$sPDUqZ6EmR-I#UNxA&Oqyllrii^-L2M0%f`cbDyL;#fw69{YDW{6rz-0{3gFm*kq^?Q3!DPwogqXArM{qef9 zcPcq1``Y2{#q?kj5o{E(7e(2zKJ_;>>O9Gatz**GKi9lhdkw+6`~%+!qES z@t{sb4gq#GZpb}3=h@%P1?AH}RUs56+(-_IG$*TvY6dk*BQA?IN8wJsnjV#a{6AJL zJRVbpB-#VIFu zR1g6)is@Gj9Y+#+Kjf`b(o?c6Oh$GabTGqwmJHVAF1mrfgmff~SpVI}cM~FB+g{;! z<2Ro4@BtRUhY}uYatn71_M}FXWgLi+j#kb$|IV9@Vr~YIg>Gx5a%V&*Kloct^2Z5e z+4(bo{C;4g_YcwM{Y-wUK-N>zFy34~3?mU3_^EHyz$d3BH*=Hs-LgIQAzs{yl%Bv^ z-1ZF%@OHdTtSex+FQi54OaA6-0%a(Y)l6Adh5Pt;`i*b!gppxWF)yL22HD{~s7jhP zlJ-N9pD-BZm7GxHZZUWs!ohelo?La0@;;O_t->fOuNJO-NrK417 { + if (this.disable) { + return + } + const keyName = Object.keys(keyNames).find(key => { + const keyName = $event.key + const value = keyNames[key] + return value === keyName || (Array.isArray(value) && value.includes(keyName)) + }) + if (keyName) { + // 避免和其他按键事件冲突 + setTimeout(() => { + this.$emit(keyName, {}) + }, 0) + } + } + document.addEventListener('keyup', listener) + // this.$once('hook:beforeDestroy', () => { + // document.removeEventListener('keyup', listener) + // }) + }, + render: () => {} +} +// #endif diff --git a/uni_modules/uni-drawer/components/uni-drawer/uni-drawer.vue b/uni_modules/uni-drawer/components/uni-drawer/uni-drawer.vue new file mode 100644 index 0000000..5b551e3 --- /dev/null +++ b/uni_modules/uni-drawer/components/uni-drawer/uni-drawer.vue @@ -0,0 +1,183 @@ + + + + + diff --git a/uni_modules/uni-drawer/package.json b/uni_modules/uni-drawer/package.json new file mode 100644 index 0000000..0bd9cf9 --- /dev/null +++ b/uni_modules/uni-drawer/package.json @@ -0,0 +1,87 @@ +{ + "id": "uni-drawer", + "displayName": "uni-drawer 抽屉", + "version": "1.2.1", + "description": "抽屉式导航,用于展示侧滑菜单,侧滑导航。", + "keywords": [ + "uni-ui", + "uniui", + "drawer", + "抽屉", + "侧滑导航" +], + "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-drawer/readme.md b/uni_modules/uni-drawer/readme.md new file mode 100644 index 0000000..dcf6e6b --- /dev/null +++ b/uni_modules/uni-drawer/readme.md @@ -0,0 +1,10 @@ + + +## Drawer 抽屉 +> **组件名:uni-drawer** +> 代码块: `uDrawer` + +抽屉侧滑菜单。 + +### [查看文档](https://uniapp.dcloud.io/component/uniui/uni-drawer) +#### 如使用过程中有任何问题,或者您对uni-ui有一些好的建议,欢迎加入 uni-ui 交流群:871950839 \ No newline at end of file