麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 課堂 > 小程序 > 正文

小程序頁面動態配置實現方法

2020-03-21 16:02:19
字體:
來源:轉載
供稿:網友

小程序可以根據管理后臺配置動態更新展示內容,如實現下面新鮮事欄目圖片的來源的可配置,點擊跳轉url的可配置。

小程序,頁面,動態配置

實現方案

1后端創建一個map結構的數據表,表結構如下:

小程序,頁面,動態配置

2 管理后臺根據不同業務設定不同的key和value,更新數據庫

如key:ad1url value:a.png

如果需要更新頁面圖片,只需更新ad1url對應的value

3 小程序根據對應業務key獲取對應的配置項,更新頁面顯示

技術棧

后端接口服務:SpringBoot Mybatis MySql

管理后臺:vue

前端:小程序

代碼實現

后端接口

為了保證key的唯一性,key在數據庫設置為unique屬性,新增和更新功能通過以下sql語句實現,主要通過replace into實現配置項的唯一

@Insert("<script>" +   "REPLACE INTO `rental`.`t_config`(`key`, `value`) VALUES" +   "<foreach" +   " collection=/"list/" item=/"item1/" index=/"index/" separator=/",/">" +   "(#{item1.key}, #{item1.value})" +   "</foreach>" +  "</script>") @Options(useGeneratedKeys = true, keyProperty = "configId", keyColumn = "configId")

api設計

一開始想通過傳如list數據給后端實現配置項的批量插入功能,發現后端數據一直接受不到,故而退而求其次,通過json字符串實現vue(網絡庫使用axios)調用后端接口

@ApiOperation(value = "新增或更新配置列表")@RequestMapping(value = "/add_or_update_config_list", method = RequestMethod.POST,     produces = MediaType.APPLICATION_JSON_UTF8_VALUE)public ResponseBean<String> addOrUpdateConfigList(String list) { long result = configService.batchInsertOrUpdate(JSONObject.parseArray(  list,Config.class)); ......}

管理平臺

管理平臺用vue開發,網絡框架采用axios,列表數據通過json字符串傳遞給后端

let config1 = {key: "ad1Url", value: this.formData.ad1Url};let config2 = {key: "ad2Url", value: this.formData.ad2Url};let config3 = {key: "adClick1", value: this.formData.adClick1};let config4 = {key: "adClick2", value: this.formData.adClick2};let configList = [config1, config2, config3, config4];let result = await addConfigList({list: JSON.stringify(configList)});......

小程序

小程序調用后端接口返回所有配置項,具體業務根據具體業務key獲取配置項

getConfigList: function () { var that = this; wx.request({  url: constant.HOST + '/config/get_config_list',  method: 'GET',  header: {  'content-type': 'application/json'  },  complete: function (res) {   },  success: function (res) {  console.log("config list response:" + JSON.stringify(res));  that.setData({ configList: res.data.data});  } }); },  goAd1: function(){ wx.navigateTo({  url: '/pages/webview/webview?url=' + this.data.configList.adClick1 })},

總結

這個功能我在自己的小程序開發過程中設計的頁面配置實現思路,主要遇到了兩個小問題:1 如果保證key的唯一性 2 前后端批量數據的傳輸問題;希望能給遇到同樣問題的小伙伴一些啟示,如果有更好的方案,歡迎一起討論

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 91成人免费在线视频 | 精品亚洲在线 | 极品大长腿啪啪高潮露脸 | 欧美日韩免费在线观看视频 | 国产在线观看一区二区三区 | 久久国产免费 | 国产呦在线观看视频 | 国产wwww | 91国内精品久久久久免费影院 | av免费在线观看国产 | 毛片av网 | 国产九九在线视频 | 国产 一区 精品 | 一级黄色影片在线观看 | 色毛片 | 羞羞视频.www在线观看 | 中文字幕在线观看日韩 | 色婷婷a v | 精品一区二区三区免费毛片爱 | 泰剧19禁啪啪无遮挡大尺度 | 国产资源在线免费观看 | 免费在线观看一级片 | 五月婷婷第四色 | 国产一区网址 | 欧美hdfree性xxxx | 成人短视频在线观看免费 | 国产电影精品久久 | 国产午夜精品一区二区三区四区 | 久章草影院 | 狼人狠狠干 | 亚洲欧美在线看 | 日韩蜜桃视频 | 欧美另类综合 | 在线看成人av | 久久久久女人精品毛片九一 | 91福利免费观看 | a视频在线免费观看 | 成人在线精品视频 | 黄色av电影在线播放 | 国产免费一区二区三区最新不卡 | 成人在线精品视频 |