第 3-8 课:云开发之商品信息和主题商品数据实现
目录
开篇【系】微信小程序云开发实战坚果商城-开篇基础篇【系】微信小程序云开发实战坚果商城-弹性盒子【系】微信小程序云开发实战坚果商城-ES6 简单入门【系】微信小程序云开发实战坚果商城-官方案例先运行前端篇【系】微信小程序云开发实战坚果商城-商城项目搭建【系】微信小程序云开发实战坚果商城-所有目录…因为前面做了大量的铺垫,越到后面我实现起来越简单,商品信息和主题商品目前只有两个路由,我就放在一遍文章里面写。
1 集合处理
在fields
文件夹新建productThemeField.js
// 指定返回结果中记录需返回的字段module.exports = {PRODUCTTHEMEFIELD: {theme_type: true,product_theme: true,_id: false}}
2 业务层实现
service/productService.js
// 头部引入const { PRODUCTTHEMEFIELD } = require('../fields/productThemeField.js')/*** 获取单个商品* @param product_id 条件* @return */const getProductById = (product_id) => {return model.findById(PRODUCT, PRODUCTFIELD, product_id)}/*** 获取商品主题* @param product_theme 条件* @return */const getThemeProduct = (product_theme) => {let options = {product_theme:product_theme}return model.query(PRODUCT, PRODUCTFIELD, options)}
3 入口文件实现
/*************************** 商品信息 *****************************************/ // 获取商品信息app.router('getProductById', async (ctx,next) =>{let product_id = event.data.product_idctx.data = await _productImg(product.getProductById(product_id))ctx.body = await returnUtil.success(ctx)await next()})/*************************** 主题商品 *****************************************/ // 获取主题商品列表app.router('getThemeProduct', async (ctx,next) =>{// 前台传入主题类型 let theme_type = event.data.theme_typectx.data = await _productItem(product.getThemeProduct(theme_type))ctx.body = await returnUtil.success(ctx)await next()})
源码地址
在搭建项目前,根据自己需要下载本系列文章的源代码
本项目源码地址:/mtcarpenter/nux-shop