【系】微信小程序雲開發實戰堅果商城-雲開發之商品信息和主題商品數據實現

第 3-8 課:雲開發之商品信息和主題商品數據實現

目錄

因爲前面做了大量的鋪墊,越到後面我實現起來越簡單,商品信息和主題商品目前只有兩個路由,我就放在一遍文章裏面寫。

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_id
  ctx.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_type
  ctx.data = await _productItem(product.getThemeProduct(theme_type))
  ctx.body = await returnUtil.success(ctx)
  await next()
})

源碼地址

在搭建項目前,根據自己需要下載本系列文章的源代碼

本項目源碼地址:https://gitee.com/mtcarpenter/nux-shop

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章