tcb-router基于 koa 风格的小程序·云开发云函数轻量级类路由库,主要用于优化服务端函数处理逻辑
基于tcb-router 一个云函数可以分很多路由来处理业务环境,避免云函数不够用的情况
安装准备
1、开通云开发
2、node.js
一、安装node.js
必须安装node.js,否则安装tcb-router会出现 npm 不是内部或外部命令,也不是可运行的程序或批处理文件。
安装完毕后测试下 输入node -v
npm -v
显示版本即为成功安装。
一、新建云函数.js
鼠标右键新建node.js云函数.jpg 输入你要建立的云函数名称.jpg在外部终端窗口打开.jpg
tcb-router安装完成.jpg输入
npm install --save tcb-router
执行安装,等待安装完成
此时,云函数下会多出一个json
文件 ,package-lock.json
// 云函数入口文件
const cloud = require('wx-server-sdk')
const TcbRouter = require('tcb-router'); //引用TcbRouter
cloud.init()
// 云函数入口函数
exports.main = async (event, context) => {
const app = new TcbRouter({ event})
// app.use 表示该中间件会适用于所有的路由
app.use(async(ctx,next)=>{
ctx.data={}
ctx.data.openId=event.userInfo.openId
await next()
})
app.router(['user,school'],async(ctx,next)=>{
ctx.data.from='小程序云函数实战'
await next()
})
app.router('user', async (ctx, next) => {
ctx.data.name = '白小白'
ctx.data.role ='小码'
await next()
}, async(ctx)=>{
ctx.data.nickName = '简单'
ctx.body={code:0,date:ctx.data}
})
app.router('school', async (ctx, next) => {
ctx.data.name = '腾讯云学院'
ctx.data.url = 'tencent.com'
await next()
}, async (ctx) => {
ctx.data.nickName = '腾讯君'
ctx.body = { code: 0, date: ctx.data }
})
return app.serve();
}
下面调用云函数
user(){
wx.cloud.callFunction({
// 要调用的云函数名称
name: "tcbRouter",
// 传递给云函数的参数
data: {
$url: "user", // 要调用的路由的路径,传入准确路径或者通配符*
}
}).then(res=>{
console.log(res)
})
},
school(){
wx.cloud.callFunction({
// 要调用的云函数名称
name: "tcbRouter",
// 传递给云函数的参数
data: {
$url: "school", // 要调用的路由的路径,传入准确路径或者通配符*
}
}).then(res => {
console.log(res)
})
}
网友评论