宁波小程序开发_宁波软件开发_宁波网络公司【昱远信息】 15058005455
小程序开发系统:​​小程序中应用:​UI设计后台(组图)|昱远信息系统开发

背景

羽毛球馆预约小程序是专为羽毛球馆从业者设计的小程序平台 小程序软件开发 ,包含本店动态、运动知识、场地预约等功能。您可以随时查看当天场地的预订数量小程序开发系统小程序开发系统,随时了解您场地的运营情况。对于羽毛球爱好者来说,可以实时查看场馆数据,一目了然可以预定多少场馆 小程序外包开发 ,根据自己的时间段安排合理的打球时间。

系统基于MVC架构,基于微信小程序平台开发。无需下载安装APP。

功能

从0到100:基于微信小程序的羽毛球馆预约系统的开发笔记_错误代码

数据库

小程序开发系统_微信小程序商城开发_开发小程序需要什么

从0到100:基于微信小程序的羽毛球馆预约系统的开发笔记_数据_02

技术难题

在小程序中使用抛异常机制,可以使代码结构更加简洁,减少大量逻辑判断,在出现错误时可以得到详细的错误信息。可以说是好处多多。今天

我想说的是在小程序的js中抛出异常。 js 可以抛出任何类型的异常,例如数字、字符串甚至布尔值,例如:

小程序开发系统_微信小程序商城开发_开发小程序需要什么

当然 小程序外包定制 ,像大多数面向对象的语言一样小程序开发系统 小程序开发系统 ,内置了Exception类,js中也有内置的异常类:Error,

我们可以自定义异常类 小程序开发设计 ,继承Error基类:

/**
* Notes: 应用异常处理类
* Date: 2020-09-05 04:00:00
* Version : CCMiniCloud Framework Ver 2.0.1


const appCode = require('./app_code.js');

class AppError extends Error {
constructor(message, code = appCode.LOGIC) {
super(message);
this.name = 'AppError';
this.code = code;
}
}

module.exports = AppError;

小程序开发系统_开发小程序需要什么_微信小程序商城开发

p>

​错误码定义:​

/**
* Notes: 错误代码定义
* Ver : CCMiniCloud Framework 2.0.1
* Date: 2020-09-05 04:00:00
* Version : CCMiniCloud Framework Ver 2.0.1
*/
module.exports = {
SUCC: 200,
SVR: 500, //服务器错误
LOGIC: 1600, //逻辑错误
DATA: 1301, // 数据校验错误
HEADER: 1302, // header 校验错误
NOT_USER: 1303, // 用户不存在
USER_EXCEPTION: 1304, // 用户异常
MUST_LOGIN: 1305, //需要登录
USER_CHECK: 1306, //用户审核中

ADMIN_ERROR: 2001 //管理员错误
}

​应用在小程序中:​

小程序开发系统_微信小程序商城开发_开发小程序需要什么

// 取得openid
const cloud = cloudBase.getCloud();
const wxContext = cloud.getWXContext();
let r = '';

try {

if (!util.isDefined(event.router)) {
console.error('Router Not Defined');
return handlerSvrErr();
}

r = event.router.toLowerCase();

// 路由不存在
if (!util.isDefined(router[r])) {
console.error('Router [' + r + '] Is Not Exist');
return handlerSvrErr();
}

let routerArr = router[r].split('@');

let controllerName = routerArr[0];
let actionName = routerArr[1];
let token = event.token || '';
let params = event.params;

console.log('');
console.log('');
let time = timeUtil.time('Y-M-D h:m:s');
console.log('+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++');
console.log('[' + time + '][Request][Route=' + r + '], Controller=[' + controllerName + '], Action=[' + actionName + '], Token=[' + token + '], ###IN DATA=\r\n', JSON.stringify(params, null, 4));


let openId = wxContext.OPENID;

if (!openId) {
console.error('OPENID is unfined');
if (config.TEST_MODE)
openId = config.TEST_TOKEN_ID;
else
return handlerSvrErr();
}

// 引入逻辑controller
controllerName = controllerName.toLowerCase().replace('controller', '').trim();
const ControllerClass = require('controller/' + controllerName + '_controller.js');
const controller = new ControllerClass(openId, params, r, token);

// 调用方法
let result = await controller[actionName]();

// 返回值处理
if (!result)
result = handlerSucc(r); // 无数据返回
else
result = handlerData(result, r); // 有数据返回

console.log('------');
time = timeUtil.time('Y-M-D h:m:s');
console.log('[' + time + '][Response][Route=' + r + '], ###OUT DATA=', result);
console.log('+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++');
console.log('');
console.log('');

return result;


} catch (ex) {
const log = cloud.logger();

if (ex.name == 'AppError') {
log.warn({
router: r,
errCode: ex.code,
errMsg: ex.message
});
// 自定义error处理
return handlerAppErr(ex.message, ex.code);
} else {
console.log(ex);
log.error({
router: r,
errCode: ex.code,
errMsg: ex.message,
errStack: ex.stack
});

// 系统error
return handlerSvrErr();
}
}

界面设计

从0到100:基于微信小程序的羽毛球馆预约系统的开发笔记_错误代码_03

从0到100:基于微信小程序的羽毛球馆预约系统的开发笔记_数据_04

开发小程序需要什么_小程序开发系统_微信小程序商城开发

从0到100:基于微信小程序的羽毛球馆预约系统的开发笔记_小程序_05

从0到100:基于微信小程序的羽毛球馆预约系统的开发笔记_数据_06

后台界面设计

从0到100:基于微信小程序的羽毛球馆预约系统的开发笔记_小程序_07

从0到100:基于微信小程序的羽毛球馆预约系统的开发笔记_数据_08

从0到100:基于微信小程序的羽毛球馆预约系统的开发笔记_数据_09

【昱远信息系统定制开发】

返回列表

相关动态