From ea8ce093243ab929f6316c1c2143b5ed858484b8 Mon Sep 17 00:00:00 2001 From: zengBin Date: Fri, 6 Sep 2024 10:09:34 +0800 Subject: [PATCH] =?UTF-8?q?update=E8=81=8A=E5=A4=A9=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E3=80=81=E4=BA=BA=E8=84=B8=E6=A0=B8=E8=BA=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 5 + src/app.wpy | 56 +- src/images/tabbar/activeHome.png | Bin 2309 -> 0 bytes src/images/tabbar/activeMy.png | Bin 3620 -> 0 bytes src/images/tabbar/activeServe.png | Bin 1297 -> 0 bytes src/images/tabbar/attention.png | Bin 0 -> 2192 bytes src/images/tabbar/attentionActive.png | Bin 0 -> 3561 bytes src/images/tabbar/home.png | Bin 0 -> 1546 bytes src/images/tabbar/homeActive.png | Bin 0 -> 3331 bytes src/images/tabbar/inactiveHome.png | Bin 2035 -> 0 bytes src/images/tabbar/inactiveMy.png | Bin 3118 -> 0 bytes src/images/tabbar/inactiveServe.png | Bin 1241 -> 0 bytes src/images/tabbar/mapIcon.png | Bin 0 -> 2015 bytes src/images/tabbar/mapIconActive.png | Bin 0 -> 3851 bytes src/images/tabbar/message.png | Bin 0 -> 2501 bytes src/images/tabbar/messageActive.png | Bin 0 -> 4002 bytes src/images/tabbar/my.png | Bin 0 -> 2619 bytes src/images/tabbar/myActive.png | Bin 0 -> 4035 bytes src/mixins/https.js | 1 - src/mixins/plugins.js | 100 ++++ src/pages/news/chitchat.wpy | 77 ++- src/pages/tabBar/dynamic.wpy | 733 ++++++++++++++++++++++++++ src/pages/user/test.wpy | 3 +- src/styles/reset.less | 2 +- src/utils/im.js | 4 +- 25 files changed, 950 insertions(+), 31 deletions(-) delete mode 100644 src/images/tabbar/activeHome.png delete mode 100644 src/images/tabbar/activeMy.png delete mode 100644 src/images/tabbar/activeServe.png create mode 100644 src/images/tabbar/attention.png create mode 100644 src/images/tabbar/attentionActive.png create mode 100644 src/images/tabbar/home.png create mode 100644 src/images/tabbar/homeActive.png delete mode 100644 src/images/tabbar/inactiveHome.png delete mode 100644 src/images/tabbar/inactiveMy.png delete mode 100644 src/images/tabbar/inactiveServe.png create mode 100644 src/images/tabbar/mapIcon.png create mode 100644 src/images/tabbar/mapIconActive.png create mode 100644 src/images/tabbar/message.png create mode 100644 src/images/tabbar/messageActive.png create mode 100644 src/images/tabbar/my.png create mode 100644 src/images/tabbar/myActive.png create mode 100644 src/pages/tabBar/dynamic.wpy diff --git a/package-lock.json b/package-lock.json index 79fad23..cf3748b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4841,6 +4841,11 @@ "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", "dev": true }, + "nim-web-sdk-ng": { + "version": "10.4.0", + "resolved": "https://registry.npmmirror.com/nim-web-sdk-ng/-/nim-web-sdk-ng-10.4.0.tgz", + "integrity": "sha512-eJCIE7/VlnqLDZb81wF8NDvep9WKfHeL7PH8OeFn7AmN2G/nFGuNkl6tcGEw635U6mitLwCV0CBdQ6tSF16mEA==" + }, "node-releases": { "version": "2.0.10", "resolved": "https://registry.npmmirror.com/node-releases/-/node-releases-2.0.10.tgz", diff --git a/src/app.wpy b/src/app.wpy index 56554a3..2732c23 100644 --- a/src/app.wpy +++ b/src/app.wpy @@ -14,6 +14,9 @@ import wepy from '@wepy/core' import vuex from '@wepy/x' import promisify from '@wepy/use-promisify' +import { wx_login } from './utils/util' +import { IM } from './utils/im' +import {service} from './config' wepy.use(promisify) wepy.use(vuex) @@ -33,6 +36,7 @@ wepy.app({ navRight: 0, // 胶囊距右方间距(方保持左、右间距一致) navTop: 0, // 胶囊距顶部间距 navHeight: 0, // 胶囊高度(自定义内容可与胶囊高度保证一致) + windowHeight: 0, userInfo: null, uploadData: null, nim: null, @@ -42,6 +46,7 @@ wepy.app({ onLaunch() { let vm = this + vm.appLogin() wx.getSystemInfo({ success: res => { vm.$options.globalData.bottomHeight = res.screenHeight - res.safeArea.bottom @@ -67,6 +72,7 @@ wepy.app({ vm.$options.globalData.navRight = systemInfo.screenWidth - menuButtonInfo.right vm.$options.globalData.navTop = menuButtonInfo.top vm.$options.globalData.navHeight = menuButtonInfo.height + vm.$options.globalData.windowHeight = systemInfo.windowHeight - vm.$options.globalData.navBarHeight }, onShow(options) { @@ -91,13 +97,36 @@ wepy.app({ onHide() {}, - methods: {} + methods: { + appLogin() { + let vm = this + wx_login().then((e) => { + wx.hideLoading() + let {accid, token} = e.data.user.wyy_user + vm.$options.globalData.nim = IM(accid, token) + }).catch((msg) => { + wx.showModal({ // 使用模态框提示用户进行操作 + title: '温馨提示:', + content: `${msg}`, + showCancel: false, + success: function (res) { + if (res.confirm) { + wx.navigateBack({ + delta: 1 + }) + } + } + }) + }) + } + } }) { pages: [ 'pages/tabBar/welcome', +'pages/tabBar/dynamic', 'pages/tabBar/home', 'pages/tabBar/news', 'pages/tabBar/user', @@ -151,18 +180,23 @@ borderStyle: 'black', list: [ { pagePath: 'pages/tabBar/home', -iconPath: './images/tabbar/inactiveHome.png', -selectedIconPath: './images/tabbar/activeHome.png', -text: '健康' +selectedIconPath: './images/tabbar/homeActive.png', +iconPath: './images/tabbar/home.png', +text: '推荐' +}, { +pagePath: 'pages/tabBar/dynamic', +selectedIconPath: './images/tabbar/attentionActive.png', +iconPath: './images/tabbar/attention.png', +text: '发现' }, { pagePath: 'pages/tabBar/news', -iconPath: './images/tabbar/inactiveServe.png', -selectedIconPath: './images/tabbar/activeServe.png', -text: '商城' +selectedIconPath: './images/tabbar/messageActive.png', +iconPath: './images/tabbar/message.png', +text: '消息' }, { pagePath: 'pages/tabBar/user', -iconPath: './images/tabbar/inactiveMy.png', -selectedIconPath: './images/tabbar/activeMy.png', +selectedIconPath: './images/tabbar/myActive.png', +iconPath: './images/tabbar/my.png', text: '我的' }] }, @@ -170,10 +204,6 @@ useExtendedLib: { 'weui': true }, plugins: { -"QNBleApi": { -"version": "4.7.1", -"provider": "wx2a4ca48ed5e96748" -}, "FL-plugin": { "version": "0.0.3", "provider": "wxc41491431733671e" diff --git a/src/images/tabbar/activeHome.png b/src/images/tabbar/activeHome.png deleted file mode 100644 index ac3ff462085655ab96eee6e32a263e809b047734..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2309 zcmbtWX*d*&79JVX4EYoxyKmHB$hA{;#=cD1MGO-qW68edV*Y>2V}0C1LY065vq zaTF^#_U|mFg!4cCQQ@yyswBHbuqDFCF`8q&FaUGf>GS|)jc6E<w9g;OfTw@$zewKn9rK?wIzj+F2=ynD>=PM;TRS3$R zR`OE(7C;L0E1^~N`7)*@(xtPlx=Xh=7!hB!n>Nij^DgK%UVVt`f$6>rjP}@5dyic_ zOCxReF?}SBvOng1K3pjZ8O>zPOks(c;hEzQ4JP(T4v z87?wTh=X!mzwQ1tJ0w(&&$HGQqF_b;X@Qp*UG`aL>{S&@YmPi0E;)#Q;W+cnr67Dn zhW~2**vXb(bd3u#Le1@EFD6<$!&OQ`9r19;k}hTJ+B)@Bh2c(`2M^x|xztqar2sYe zys8}3CgXByMap7)v=7~0!c;^atua5|#ARA(g}s1G({PP7@T|yX+%2janGWL>^$Eno zC54d1oH5$ZR>9RalYaNfXx4&XzAzc=X;Hu*sU?{dd}XC@+V?dj*@dBBrQT@eK-dol z_Z8^*!U6@Vq0XRJ=LZmtK^a9;auN zQB{VDwGkg_$-m{kX&P3zUlVrV^i1-zbEo^hHpC1#)Ei0h{d8Y@T;rhQQ4MSE(v--k zl1s3vgS&J2lbeWodeY(OOP^jzG1G_W!eJc0Ic03VZfmY!R3WTS^b{^OnH~bA<`4%3 zMu+@q+Nb7P#!uO9hQ0!k(TMtw^Mua3eCHR8qXtGCwBC(ll)Pnw6Zm37V(*k{-M}Yo zh@D#FC*&uHNL3pN2&K!$}91;sRz%P z3f)x%2<%MKh3Z?-k&nxI9E{xl2dMDh7p1HX4))|_EJS7Wa3}O968?x)9~NTWTa?X^ z%4(h}z!6q)5FsRNAb6^H8QdR}JJw#R8JKu=UQPa0%{C-SgP;Y3vAOXwM~LOc%oScJZI#Z+1IqMC@Qvf8Ja<}?&0+)p(P<=4^}AlNni z{lm4>T^~ZOPrl^&j0^_7iZ5L z;tCJF5Gv#J+A61`btL*${JvdMYn0`F_l2qx{|Dx;$L_kX=C3%h7cx7UTq~Ou0D`j< zCkAGz9<=QB?P|8bd3^TMN%Uw$9(DNImFV$#N%SG6`H^dNbV^C29K=jy5UFz83T&6y zWACOM3g=BsNIM5Sn@E2lo`17Xj%R7N-T3*~%}I+DZ(vqw^$%sZiJS6!gk&dkYJZsZ zUPdH)D9HoPZ(@dmEbRs%_!hqB1s)to>vBpeq|=(z9fz5JS#C7|%W;{H9Cr6zdi5J()OG{Gtck3$GWR6>PO$;e6^tyq_}V~y^{WE2GthnFN~>& zhK{W7#+zw%Yff8(C=ZsARIz94FlyI=Vj8QS^cY2dPbyT7aflEPFQb?bWR%eGcEdCH zcALh5>14%w+I&*X7$M`@imOqR86J&+S=5yOebfJS?fH{_1ElvJ^4$uli(`Kv083Ll J1i=`E{U=k8NtOTr diff --git a/src/images/tabbar/activeMy.png b/src/images/tabbar/activeMy.png deleted file mode 100644 index d66e968f102fdca369ae39b694a232cec4f7920a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3620 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 diff --git a/src/images/tabbar/activeServe.png b/src/images/tabbar/activeServe.png deleted file mode 100644 index 414406b560d4db2dad6339938a29283ae78c58ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1297 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 literal 0 HcmV?d00001 diff --git a/src/images/tabbar/home.png b/src/images/tabbar/home.png new file mode 100644 index 0000000000000000000000000000000000000000..84c4accb524b4fc12a8bdeedb6efd871f614e121 GIT binary patch literal 1546 zcmV+l2KD)gP)Px)#7RU!RCr$PoK0*SRS?H#-r7#uc-Ia|Y{w=At{~umgh0Tl5(u?LR23i!Q;0*8nT98eKGAXTCQK?SN16j}~QNEH%Xxby-N9D0B>j-3xXyV;OB-hG4KHc1;2 zcR$`bv6J_d$ZL82vok->?!J%pBB&-s0HxGQ3<{uR5h#EPpdRvWtYPf_HKZ<9^DPBvE-dUL z$Ndrj^oUtC5ZIASCVeiVURt(g08P_AM!-J+08KIrLcp<1Mjw;(6G^`50EsAJTGnX* zJQ^wD79wPL&Pb<^AYvmUtm!_N5o$c=%8U3Gg0(WG@Ax+ zZf@}&WX>fbx;ILoAv9MRruG>|?_VJ_kxe%Rpk-N)ae{9FU?_5=;e>UKB@gNPuFK(M z;jP;a(6sHB$mO2^z{;>Je3TIsh`7XoUhOxGvk~NhC2a#JhGKJ;J%&JU18mK_BO($3 zy`RzblVUqCl@Nw)0Z2r>re%K$Kre)drG2J|UuX36C?YP#y_47h+P0l{Ib9&4N8%1v z(%)|hjXjf2r>l~F*2rT8SgYChGv*D;?us+W*nAQFt!Zq(uIsf66|NX&`g_`z! zCY}D#-`3wE7J%mb{OiQ&)XK0-Kyh6cT$h8(IdINz0NaG-L1h9eTLsL-dxpS}Eq@W< z0K+%3y8f|jNKycaNHZ<#BLI9&0BSZJa9qa&*QrfZuLn~=1w56{4ZewpkpqqlkcbS^ zvd?qwKGkS6J#gLFkm2_Ugu{hGVIfNVkpR}~i+2NSUTR!#+}Cuv6Wpz^5a0@N=fKFw z$V6C(p#fH_)kj^z3!L-ZW}Vl?N0e3gU2^ z*boElp;9U5dpHLJSS}wYLebCLIStt>BgOm|ehCKzSUFDQb(D8ZL!{9=i^b3V5>^0P z5K;jBO2_AO1yBK$Bp@kQ6{rA85|EUu3f$=cHH|@kHUmAW6gZ9xb<>2UrReunrjkkM z&l-?OBs@R$ITIY$ZHc+-D{ye2A9{OkE+vau?aAtNq?v6o?O(_Zf~MWPk4ZqBnwj06 z07dVogm+uC72a-Ciu@*X1=^tHa{; z@Hb!e^rT>D;Er|vCaY5|mmd_sTW~3W%P>?020VMILpUI)R%QyIBtRiAZEzKynx2KF zX868fGLe9MZg5RhVnIw?g6&4qhmA3HjqSu*j z)w&*_NG#pA+e=!EMCRvh@1B~dO?0O9bRQ&>31}=e!M1O|j=n7bMuioJP63ppr~oQ} zk_05>ssa^2Ndl5`Re=hiBmqgesz3!$l7OUKRiFYWNkCGrDo_EGBp@kQ6{rA85|EUu z3RD0k2}sIS1uB4&1SI9E0y_!dc)4;6h(45zsjK7~vX_g+yzfKJ0{u?ppK|#L2JGjJ zo+{Z@R00MoelMpXJUBc&{D+?;5J2H%yj(sAgnJRCpSI=~)0Tcth)p8?!=7R>&@&YR w1KiTAI(X*_pyZdM04jiz1SI9E0wn?d2L%adep&|G0RR9107*qoM6N<$f`=lnYybcN literal 0 HcmV?d00001 diff --git a/src/images/tabbar/homeActive.png b/src/images/tabbar/homeActive.png new file mode 100644 index 0000000000000000000000000000000000000000..47768082346bb313bc68916b353af1fd03fed0a1 GIT binary patch literal 3331 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 N002ovPDHLkV1gvPEW`i+ literal 0 HcmV?d00001 diff --git a/src/images/tabbar/inactiveHome.png b/src/images/tabbar/inactiveHome.png deleted file mode 100644 index 91acdbdd5cf4ff3814b874042e0a669bebcc83c0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2035 zcmc&#dpHw}8sCO!L$axvOZrrDZA2~!)39<|G{k(iI?Ce2C2E?(SW?#mh9(NaX{o|Ty?!@hL z!U*rCm>(MrbH0dNW5j77&Q1j@^S_CPfgPkU@ej(%VjvL6*y!k}f=67$5Eu*=E`0g& z=Ur{;aCF8Oov9V8_pTRC*M;c~=N18?OtBf zzkU93Y3Y#ZE2sFUruy?*wgq zeSMXJf&ywLgugyYQPFMp^Yx7r&&^ry@DSRW$$O{q&UV?#S0)TRwQC6u4vy0y*9O^Bc?xlVoR{AC*@A`9banYgEM-9GiRMSnT z)6L`ZSDQ(xui|oe-(?}?zF7#mVaj>9Ba%cS<;;4)h1JSwu)O?ygr~oML}zDb+YNAj z{DS86(vn3@Z-yr}QdLkA>5s>c=xglM?Flt(MNYW4l>BJw6wDFa$O*JtOQ(J zTbqP&Q>)uf8 zpsBgJj?umO`G_Ztjp3Nk0#;xlPTD0(HL&lFiCrN7WW3hqQOk;pTj@>JX@x~a`7d5L z98Z@nIMbBL_v9FA30W#p&4Zw_Oo0(9;PIdl10ZEgSf znVt36fPlM{0pWMQhvjl`%hXrxEyWy82fzm}g>c-Jh!J4o`}_MSdS9 zKdbL0?b3I0pN?_m9v|6HA7$$@y8*seOgr)|(uQ{zW!Fg&im8}8V=ZOH*7olCj~{~s z0zn|seOf0fDoQ%3=up5&Gnq_YbbzeIPPJg|tvhCBW}t7s3XX(vDk^RrAhtVo& zZ!SD%N_30@!NDmrd>+q!(p)pI_r)7o12<*5DcW|YwoWJkaI4#`xg%3P^A2$OR~?so zv6|Q;fB2tyWM0zUmK(;-3h*Ip_N88SVp?2|bB1-qSFt+sjisF2B}6k$>z&tRebuZv z69i_IWF5Z@%R7#=s5*#bo>Y8silEp!{_I|hg`OqMiDoICD58TzoGGlj%(Rj`Q~&R1 z$OLt*H>xIsRStWj^H0*&)D9a@j#ptkb*pDLUYRS(owK2v;s_>}`6(Kj$mJa!Vx)Ck z_mTVg^l7euU1e~vsNAwF?sm?S79p%G?=mMPu$gzvMbh^ zeDlMr>-*<7%0!Jhk&PBCZaTE$ZsG_lb`ZIg$f&^|oo9wf+|$brX7~tgv$>Vud+Uc5cJ7lmU=)iN>do>hzYfr%Rf#lG%;4gZyNq m(c#*U`HA~~4-VL_va};%h{S%9EVXy*;hu1CLs!`o68;6ys+%7G diff --git a/src/images/tabbar/inactiveMy.png b/src/images/tabbar/inactiveMy.png deleted file mode 100644 index 9378fce70c910ff0a7c3104ca4c12beb154129ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3118 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 N002ovPDHLkV1i|qJA(iK literal 0 HcmV?d00001 diff --git a/src/images/tabbar/message.png b/src/images/tabbar/message.png new file mode 100644 index 0000000000000000000000000000000000000000..48af13ecc9285cafd54f7d75fd842bfc0a5f96b7 GIT binary patch literal 2501 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 IM6N<$f|~S`p8x;= literal 0 HcmV?d00001 diff --git a/src/images/tabbar/my.png b/src/images/tabbar/my.png new file mode 100644 index 0000000000000000000000000000000000000000..5e87be7a308b98844e4c31ba916527fbb69ded54 GIT binary patch literal 2619 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 literal 0 HcmV?d00001 diff --git a/src/mixins/https.js b/src/mixins/https.js index 3c1223c..b0f1b76 100644 --- a/src/mixins/https.js +++ b/src/mixins/https.js @@ -12,7 +12,6 @@ export default { $get({url = '', headers = {}, data = {}, timeout = 8000}) { let vm = this const methods = 'GET' - vm.$showLoading('') return new Promise((resolve, reject) => { this.$ajax({url, headers, methods, data, timeout}).then(({code, data}) => { resolve({code, data}) diff --git a/src/mixins/plugins.js b/src/mixins/plugins.js index fd9e141..e0e6ac9 100644 --- a/src/mixins/plugins.js +++ b/src/mixins/plugins.js @@ -193,6 +193,105 @@ const getDiffTime = (recordTime, yearsFlag) => { return '数据异常' } +const commentTimeHandle = (dateStr, typ) => { + let time = dateStr + let type = typ + let repTime = time.replace(/-/g, '/')// 用正则兼容ios + let targetDate = new Date(repTime) + let year = targetDate.getFullYear() + let month = targetDate.getMonth() + 1 + let day = targetDate.getDate() + let nowDate = new Date() + let timeTamp = Date.parse(repTime) + let publishTime = timeTamp / 1000, // 获取dataStr的秒数 + date = new Date(publishTime * 1000), // 获取dateStr的标准格式 + // 获取date 中的 月 日 时 分 秒 + M = date.getMonth() + 1, + D = date.getDate(), + H = date.getHours(), + m = date.getMinutes(), + s = date.getSeconds() + // 对 月 日 时 分 秒 小于10时, 加0显示 例如: 09-09 09:01 + if (M < 10) { + M = '0' + M + } + if (D < 10) { + D = '0' + D + } + if (H < 10) { + H = '0' + H + } + if (m < 10) { + m = '0' + m + } + if (s < 10) { + s = '0' + s + } + + let nowTime = new Date().getTime() / 1000, // 获取此时此刻日期的秒数 + diffValue = nowTime - publishTime, // 获取此时 秒数 与 要处理的日期秒数 之间的差值 + diff_days = parseInt(diffValue / 86400), // 一天86400秒 获取相差的天数 取整 + diff_hours = parseInt(diffValue / 3600), // 一时3600秒 + diff_minutes = parseInt(diffValue / 60), + diff_secodes = parseInt(diffValue) + if (type == 3) { + if (diff_days <= 0) { + return '今天' + ' ' + H + ':' + m + } else if (diff_days > 0 && diff_days < 2) { + return '昨天' + ' ' + H + ':' + m + } else if (year == nowDate.getFullYear()) { + return month + '-' + day + ' ' + H + ':' + m + } else { + return year + '-' + month + } + } + if (type == 2) { + if (diff_days <= 0) { + return '今天' + } else if (diff_days > 0 && diff_days < 2) { + return '昨天' + } else if (year == nowDate.getFullYear()) { + if (day > 9) { + return month + '/' + day + } else { + return month + '/' + 0 + day + } + } else { + if (day > 9) { + return month + '/' + day + } else { + return month + '/' + 0 + day + } + } + } else { + if (diff_days > 0 && diff_days < 2) { // 相差天数 0 < diff_days < 2 时, 直接返出 + return diff_days + '天前' + } else if (diff_days <= 0 && diff_hours > 0) { + return diff_hours + '小时前' + } else if (diff_hours <= 0 && diff_minutes > 0) { + return diff_minutes + '分钟前' + } else if (diff_secodes < 60) { + if (diff_secodes <= 0) { + return '刚刚' + } else { + return diff_secodes + '秒前' + } + } else if (year == nowDate.getFullYear()) { + if (day > 9) { + return month + '-' + day + } else { + return month + '-' + 0 + day + } + } else { + if (day > 9) { + return year + '-' + month + '-' + day + } else { + return year + '-' + month + '-' + 0 + day + } + } + } +} + const getElement_WH = (element) => { // 获取元素位置 return new Promise((resolve) => { let query = wx.createSelectorQuery() @@ -210,5 +309,6 @@ module.exports = { timeContrast, getVideoTime, getDiffTime, + commentTimeHandle, getElement_WH } diff --git a/src/pages/news/chitchat.wpy b/src/pages/news/chitchat.wpy index ebc947b..69b2b5e 100644 --- a/src/pages/news/chitchat.wpy +++ b/src/pages/news/chitchat.wpy @@ -69,6 +69,20 @@ page { float: right; } + .ui-error-icon, .ui-error-icon-v2{ + width: 40rpx; + height: 40rpx; + position: absolute; + top: 50%; + left: -50rpx; + transform: translateY(-50%); + } + + .ui-error-icon-v2{ + left: initial; + right: -60rpx + } + .ui-user-pic { width: 86rpx; height: 86rpx; @@ -102,7 +116,6 @@ page { } .ui-msg-left-pic, .ui-msg-right-pic{ - border: 2rpx solid #eaeaea; max-width: 200rpx; max-height: 200rpx; border-radius: 20rpx; @@ -565,7 +578,9 @@ page { {{item.time}} - + + + @@ -867,7 +882,7 @@ wepy.page({ showTime: timeContrast(format(msg.time), vm.lastTime), name: msg.fromNick, userId: msg.from, - isSend: 1, + isSend: msg.status == 'sendFailed' ? 2 : 1, // sendFailed 发送失败 msgType: 'image' }) vm.lastTime = format(msg.time) @@ -882,9 +897,12 @@ wepy.page({ }) } }) + } else { + vm.sendFileError() } wx.hideLoading() }).catch(() => { + vm.uploadState = false wx.hideLoading() }) }, @@ -933,6 +951,7 @@ wepy.page({ } }) }, + // 发送语音 sendAudio(file) { let vm = this vm.openShow = false @@ -968,9 +987,7 @@ wepy.page({ vm.lastTime = format(msg.time) vm.$nextTick(() => { vm.toView = `id_${msg.time}` - }) - // 防止音频撑开触发加载历史数据 - vm.$nextTick(() => { + // 防止音频撑开触发加载历史数据 setTimeout(() => { vm.uploadState = false }, 500) @@ -978,6 +995,30 @@ wepy.page({ } }) }, + // 发送图片或视频失败 + sendFileError() { + let vm = this + let timeData = new Date().getTime() + vm.msgList.push({ + text: '', + attach: {url: 'https://image.fulllinkai.com/202408/19/fc68d5ba0d7c952f08e2ae3f04ed70a9.png', w: 200, h: 162}, + id: `id_${timeData}`, + isSelf: true, + avatar: vm.myAvatar, + name: vm.myName, + userId: vm.myUserId, + isSend: 2, + msgType: 'image' + }) + vm.lastTime = format(timeData) + vm.$nextTick(() => { + vm.toView = `id_${timeData}` + // 防止音频撑开触发加载历史数据 + setTimeout(() => { + vm.uploadState = false + }, 500) + }) + }, // 标记信息已读 sendMsgReceipt(e) { app.globalData.nim.msg.sendMsgReceipt({ @@ -1039,6 +1080,7 @@ wepy.page({ } vm.$showLoading('') app.globalData.nim.msgLog.getHistoryMsgs(data).then((object) => { + console.log(object, '222222222222222222') if (object && object.length > 0) { if (vm.msgList && vm.msgList.length == 0) { vm.sendMsgReceipt(object[0]) @@ -1073,6 +1115,7 @@ wepy.page({ videoDur: item.type == 'video' ? getVideoTime(item.attach.dur) : '', audioDur: item.type == 'audio' ? (item.attach.dur / 1000).toFixed(0) : '', name: item.fromNick, + isSend: 1, userId: item.from, msgType: item.type }) @@ -1502,13 +1545,23 @@ wepy.page({ // 底部输入框高度 vm.changeInputHeight(true) vm.$nextTick(() => { - // 获取历史消息 - vm.getHistoryMsg() - // 实时获取对方发送的消息 - app.globalData.nim.on('msg', function (e) { - vm.reception(e) - }) + setTimeout(() => { + // 获取历史消息 + vm.getHistoryMsg() + // 实时获取对方发送的消息 + app.globalData.nim.on('msg', function (e) { + vm.reception(e) + }) + }, 3000) }) + // vm.$nextTick(() => { + // // 获取历史消息 + // vm.getHistoryMsg() + // // 实时获取对方发送的消息 + // app.globalData.nim.on('msg', function (e) { + // vm.reception(e) + // }) + // }) wx.setNavigationBarTitle({ title: vm.otherUserName, success: function () {} diff --git a/src/pages/tabBar/dynamic.wpy b/src/pages/tabBar/dynamic.wpy new file mode 100644 index 0000000..ce356fc --- /dev/null +++ b/src/pages/tabBar/dynamic.wpy @@ -0,0 +1,733 @@ + + + + + +{ +navigationBarTitleText: '', +navigationStyle: 'custom', +enablePullDownRefresh: false, +backgroundColorTop: '#ffffff', +backgroundColorBottom: '#ffffff', +usingComponents: { +pageScroll: '~@/components/pageScroll' +} +} + diff --git a/src/pages/user/test.wpy b/src/pages/user/test.wpy index af17760..371b285 100644 --- a/src/pages/user/test.wpy +++ b/src/pages/user/test.wpy @@ -78,7 +78,8 @@ wepy.page({ onShow() { }, onLoad() { - this.getList() + let vm = this + vm.getList() } }) diff --git a/src/styles/reset.less b/src/styles/reset.less index 50a3b59..b1fe4c5 100644 --- a/src/styles/reset.less +++ b/src/styles/reset.less @@ -139,7 +139,7 @@ } } -no_border { +.no_border { border: none !important; } diff --git a/src/utils/im.js b/src/utils/im.js index a6f4b71..5db3b2d 100644 --- a/src/utils/im.js +++ b/src/utils/im.js @@ -2,7 +2,6 @@ import NIM from 'nim-web-sdk-ng/dist/v2/NIM_MINIAPP_SDK' import { service } from '../config.js' const IM = (account, token) => { - console.log(account, token, '8888888888888888') let nim = NIM.getInstance({ debugLevel: 'off', appkey: '9bc3ed1f7d8197b6b69f8f5b742824b1', @@ -20,7 +19,7 @@ const IM = (account, token) => { eventList.forEach((key) => { nim.on(key, (res) => { - console.log(`Receive ${key} event:`, res ? JSON.parse(JSON.stringify(res)) : res) + // console.log(`Receive ${key} event:`, res ? JSON.parse(JSON.stringify(res)) : res) }) }) @@ -171,7 +170,6 @@ const IM = (account, token) => { }) nim.on('myTeamMembers', function (e) { - console.log(e, nim.session, '/////////////') let muteNotList = [] if (e && e.length > 0) { e.forEach((i) => {