• 微信小程序与idea后端如何进行数据交互


    如何交互

    交互使用的其实就是调用的req.get('url')方法 进行路径访问,你要先保证自己的springboot项目已经成功运行了:

    如下:

    如何交互的?

    微信小程序:如下为index.js页面

     在onLoad()事件中调用方法Project.findAllCities()

    要在当前js页面中先引入project.js 别名Project (只要写相对路径就行,后缀名.js不写

     project.js页面代码中定义的findAllCities()方法如下:

    1. import req from '../utils/request'
    2. import qs from '../vendor/qs'
    3. import util from '../utils/util'
    4. export default {
    5. search: function(cnds){
    6. console.log("------", cnds)
    7. return req.get('/projects/page-list?' + util.queryStringify(cnds))
    8. },
    9. findAllCities:function(){
    10. return req.get('/projects/city/findAllCities')
    11. }
    12. }

     该方法就是去调用RequestMapping映射的路径

        crud方法格式都一致,你想加方法直接再加一个就行,mapping映射对应上就行


    下面来解释如何调用的: 

    也就是使用req.get()方法

    那么req也是引入了request.js文件,定义的别名req

     request.js页面代码:

    1. import wxRequest from 'wechat-request';
    2. wxRequest.defaults.baseURL = 'http://localhost:8821'
    3. wxRequest.defaults.headers.post['Content-Type'] = 'application/json';
    4. wxRequest.defaults.headers.put['Content-Type'] = 'application/json';
    5. wxRequest.defaults.headers['token'] = wx.getStorageSync('token');
    6. export default wxRequest

    request.js页面引入的wechat-request是

    如上node_modules中定义的wechat-request是新建TDesign时导入的

    链接:https://pan.baidu.com/s/1aYpoDVsWk9OYOz2ydBnzjQ?pwd=ob4s 
    提取码:ob4s

    具体看我这篇开发记录:

    https://blog.csdn.net/m0_47010003/article/details/132756856icon-default.png?t=N7T8https://blog.csdn.net/m0_47010003/article/details/132756856调用的业务逻辑盘完了,

    接下来

    回到index.js页面的onLoad()方法里面(调用project.js页面代码中定义的findAllCities()方法)

     如何循环遍历获取到List类型的数据,并赋值给data中的数组变量?

     如上图,获取到的数据,使用setData赋值给cities

    使用如下图所示 方法,map()

     map()是遍历res.data中的所有数据,

    city => {return {value: city, label: city}}

    上面的city相当于item的概念,把每个item都设置成key:value的格式,包括value和label


     如果springboot项目返回的是List类型的数据

    1. let self = this
    2. //城市列表数据从Project归属地中查询
    3. Project.findAllCities().then((res) => {
    4. console.log("获取到城市有:" + res.data)
    5. let cs = res.data.map(city => {
    6. return {
    7. value: city,
    8. label: city
    9. }
    10. })
    11. self.setData({
    12. cities: cs
    13. })
    14. })
    15. Project.findAllUsers().then((res) => {
    16. console.log("获取到的user有:" + res.data)
    17. let rcds = res.data.map((rd) => {
    18. return {
    19. value: rd.id,
    20. label: rd.name
    21. }
    22. })
    23. self.setData({
    24. users: rcds
    25. })
    26. })

    都是使用res.data.map()方法

  • 相关阅读:
    Vue3实现获取验证码按钮倒计时效果
    目标检测YOLO实战应用案例100讲-基于YOLOv5的船舶检测
    网络安全(黑客)自学
    Java单例模式
    【预测模型-DELM分类】基于哈里斯鹰算法改进深度学习极限学习机实现数据分类附matlab代码
    【lesson13】进程地址空间收尾
    分布式锁使用
    理想L9,智能座舱新潮流
    leetcode第362场周赛
    java数据结构之双端队列ArrayDeque
  • 原文地址:https://blog.csdn.net/m0_47010003/article/details/132874563