【宝剑出鞘】wx小程序(云开发)综合服务站项目
创始人
2025-05-31 15:37:17
0

 大家好,我是csdn的博主:lqj_本人

这是我的个人博客主页:

lqj_本人的博客_CSDN博客-微信小程序,前端,python领域博主lqj_本人擅长微信小程序,前端,python,等方面的知识https://blog.csdn.net/lbcyllqj?spm=1011.2415.3001.5343哔哩哔哩欢迎关注:小淼Develop

小淼Develop的个人空间-小淼Develop个人主页-哔哩哔哩视频

本篇文章主要讲述【宝剑出鞘】wx小程序(云开发)综合服务站项目,本篇文章已经成功收录【宝剑出鞘】专栏中:

目录

前言

项目页面演示

使用到的UI及组件

逻辑事件

A."管理员与用户的联动逻辑事件"。

wxml设计逻辑:(分为两个循环渲染体)

 js设计逻辑:(分为两个读取数据库的函数体)

两个函数体(借助云函数)getusers

管理员的查看用户信息的分类中子页面中的"已阅"选项

B."首页的计算用户分类信息百分比的逻辑算法"。

以"咨询"这一分类,为例展开讲述

js逻辑事件中"做文章"

在wxml代码中"做文章"

定义和用法

语法

返回值

抛出


 

前言

所谓云开发,是由传统的开发模式的基础上改良后的开发模式。是云端一体化的后端云服务 ,采用 serverless 架构,免去了移动应用构建中繁琐的服务器搭建和运维。同时云开发提供的静态托管、命令行工具(CLI)、Flutter SDK 等能力降低了应用开发的门槛。使用云开发可以构建完整的小程序/小游戏、H5、Web、移动 App 等应用。

项目页面演示

 

 

使用到的UI及组件

UI组件:介绍 - Vant Weapp (gitee.io)

时间戳(自创).js:

const formatTime = date => {const year = date.getFullYear()const month = date.getMonth() + 1const day = date.getDate()const hour = date.getHours()const minute = date.getMinutes()const second = date.getSeconds()return [year,month,day].map(formatNumber).join('/')// +' '+[hour,minute,second].map(formatNumber).join(':')
}// const formatDate = date =>{
//     const year = date.getFullYear()
//     const month = date.getMonth() + 1
//     const day = date.getDate()//     return [year,month,day].map(formatNumber).join('-')
// }
const formatNumber = n => {n = n.toString()return n[1] ? n : '0' + n   
}
module.exports = {formatTime:formatTime,// formatDate:formatDate
}

.wxs:

var filters = {toFix: function (value) {return value.toFixed(2) // 此处2为保留两位小数,保留几位小数,这里写几    }
}module.exports = {toFix: filters.toFix,toNumber: filters.toNumber,
}

逻辑事件

A."管理员与用户的联动逻辑事件"。

“管理员已读”和“管理员未读”的显示判断条件。

wxml设计逻辑:(分为两个循环渲染体)

 js设计逻辑:(分为两个读取数据库的函数体)

两个函数体(借助云函数)getusers

// 云函数入口文件
const cloud = require('wx-server-sdk')cloud.init({ env: cloud.DYNAMIC_CURRENT_ENV }) // 使用当前云环境// 云函数入口函数
exports.main = async (event, context) => {const wxContext = cloud.getWXContext()return {event,openid: wxContext.OPENID,appid: wxContext.APPID,unionid: wxContext.UNIONID,}
}

 第一个函数体(首先调已写好的云函数)

根据获取到的openid来确定是哪一个用户的信息,并访问“content”数据库,通过云函数获取到的openid这唯一确定用户信息的字段。来获取到“content”数据库中的本用户的信息数组。并for循环渲染出来!

 第二个函数体(首先调已写好的云函数)

根据获取到的openid来确定是哪一个用户的信息,并访问“yiyuedu”数据库,通过云函数获取到的openid这唯一确定用户信息的字段。来获取到“yiyuedu”数据库中的本用户的信息数组。并for循环渲染出来!

这样根据两个不同的数据库来获取不同的数据,这就给我们“管理员区域”做出的操作传给用户的数据,留了一部分可操作空间!

管理员的查看用户信息的分类中子页面中的"已阅"选项

{item._id}}" slot="left">已阅

绑定事件逻辑(先获取“content”数据库中的用户上传的信息,然后再往“yiyuedu”数据库中添加,最后删除“content”数据库中关于本条用户id的绑定的那条用户信息。)

B."首页的计算用户分类信息百分比的逻辑算法"。

分为("未读的信息分类的百分比计算"与"已读信息分类的百分比计算")

以"咨询"这一分类,为例展开讲述

js逻辑事件中"做文章"

(首先获取"content"数据库中的分类的下标为"0"的信息,也就是本项目的"咨询"分类信息),获取此分类里面的信息数组长度(length)

W_zixun(){let that = thiswx.cloud.database().collection('content').where({newsid:'0'}).get({success(res){console.log(res.data.length)let W_zixun W_zixun= res.data.lengththat.setData({W_zixun:W_zixun})}})
},

获取"content"数据库中的所有信息的长度(不分分类下标,获取所有的信息length)

W_zonghe(){let that = thiswx.cloud.database().collection('content').get({success(res){console.log(res.data.length)let W_zongheW_zonghe = res.data.lengththat.setData({W_zonghe:W_zonghe})}})
},

在wxml代码中"做文章"

toFix函数的介绍

定义和用法

toFix() 方法可把 Number 四舍五入为指定小数位数的数字。

语法

NumberObject.toFixed(num)

返回值

返回 NumberObject 的字符串表示,不采用指数计数法,小数点后有固定的 num 位数字。如果必要,该数字会被舍入,也可以用 0 补足,以便它达到指定的长度。如果 num 大于 le+21,则该方法只调用 NumberObject.toString(),返回采用指数计数法表示的字符串。

抛出

当 num 太小或太大时抛出异常 RangeError。0 ~ 20 之间的值不会引发该异常。有些实现支持更大范围或更小范围内的值。

当调用该方法的对象不是 Number 时抛出 TypeError 异常。

                        {filters.toFix(W_zixun/W_zonghe*100)}}"pivot-text="未读"pivot-color="#7232dd"color="linear-gradient(to right, #be99ff, #7232dd)"/>{{filters.toFix(W_zixun/W_zonghe*100)}}%

 使用,"W_zixun"这一分类的length长度/"W_zonghe"总的数据length长度,再借用toFix()函数将运算出的数"四舍五入",并向上取整!

相关内容

热门资讯

破题儿第一遭的近义词 破题儿第一遭的近义词有:破题儿,破题儿头一遭,破题儿第一遭[pò tí ér dì yī zāo]的...
如堕烟海的近义词 如堕烟海的近义词有:如坐云雾,如堕烟雾,雾里看花,如堕烟海[rú duò yān hǎi]的意思:好...
雁杳鱼沉的近义词 雁杳鱼沉的近义词有:信断音绝,雁断鱼沉,雁逝鱼沉,雁杳鱼沉[yàn yǎo yú chén]的意思:...
汪洋大海的近义词 汪洋大海的近义词有:东洋大海,声势浩大,波澜壮阔,汪洋大海[wāng yáng dà hǎi]的意思...
明效大验的近义词 明效大验的近义词有:明验大效,明效大验[míng xiào dà yà]的意思:显著而又巨大的效验。...
难乎为继的近义词 难乎为继的近义词有:难以为继,难乎为继[nán hū wéi jì]的意思:难于继续下去。出自:清 ...
在所难免的近义词 在所难免的近义词有:在劫难逃,在所不免,在所无免,在所难免[zài suǒ nán miǎn]的意思...
恨入心髓的近义词 恨入心髓的近义词有:恨之入骨,恨之切骨,恨入骨髓,恨入心髓[hèn rù xīn suǐ]的意思:恨...
富翁的近义词 富翁的近义词  近义词:  大亨、财主  大亨:大亨 dàhēng[magnate;big wig;...
背本就末的近义词 背本就末的近义词有:背本趋末,背本逐末,背本就末[bèi běn jiù mò]的意思:指背离根本,...
问牛知马的近义词 问牛知马的近义词有:举一反三,触类旁通,问羊知马,闻一知十,问牛知马[wèn niú zhī mǎ]...
不通文墨的近义词 不通文墨的近义词有:不识之无,胸无点墨,不通文墨[bù tōng wén mò]的意思:通:精通;文...
发奋图强是不是褒义词 发奋图强是不是褒义词  下定决心,努力追求进步。小编收集了发奋图强是不是褒义词,欢迎阅读。  典故出...
修辞立其诚的近义词 修辞立其诚的近义词有:修辞立诚,修辞立其诚[xiū cí lì qí chéng]的意思:诚:真心实...
屡试屡验的近义词 屡试屡验的近义词有:屡试不爽,屡试屡验[lǚ shì lǚ yàn]的意思:验:有效果。多次试验,都...
一通百通的近义词 一通百通的近义词有:畅通无阻,一通百通[yī tōng bǎi tōng]的意思:一个主要的弄通了;...
孤阴则不生,独阳则不长的近义... 孤阴则不生,独阳则不长的近义词有:孤阴不长,独阳不生,孤阴则不生,独阳则不长[gū yīn zé b...
见鞍思马的近义词 见鞍思马的近义词有:睹物思人,见鞍思马[jiàn ān sī mǎ]的意思:看见死去或离别的人留下的...
摇吻鼓舌的近义词 摇吻鼓舌的近义词有:摇唇鼓喙,摇唇鼓舌,摇吻鼓舌[yáo wěn gǔ shé]的意思:耍嘴皮,嚼舌...
手滑心慈的近义词 手滑心慈的近义词有:乐于助人,手滑心慈[shǒu huá xīn cí]的意思:慈:慈祥。手头慷慨,...