微信小程序学习笔记

微信小程序学习笔记

一·功能实现:将小程序中的变量保存到本地缓存中,以便下次打开小程序时获取改变后的变量值:

data:{
    i:true
}

将data中的 i 变量存储到本地

注意:key的值是唯一的,重复会覆盖原来的值

wx.setStorage({          
    key: 'kettle',     
    data: that.data.i, 
})    

存储的变量可以在不同的js中获取

取出存储在本地的 i 变量

wx.getStorage({           
    key: 'kettle',          
    success: function(res) {      ----->取出变量成功后的回调函数<br>
        that.setData({               
            i:res.data            
        })                           
     },                              
})

二·功能实现:微信小程序打开后自动获取用户的当前位置,并把位置信息显示在页面上

前端变量

{{ location }}

全局变量

 1 data:{                            
 2 location:"山东省济南市历下区"        -->这里最好填写一个地理位置,以便获取失败后仍然有位置信息可以显示
 3 }
 4 
 5 onShow:function(){  -->onshow函数页面显示时自动加载        
 6 // 获取定位城市                       
 7 var that = this                 
 8 wx.getLocation({       -->wx.getLocation函数是微信自带的获取用户当前位置经纬度的函数
 9     type: 'wgs84',                  
10     success: function (res) {           
11         var latitude = res.latitude    
12         var longitude = res.longitude   
13         var speed = res.speed         
14         var accuracy = res.accuracy   
15     //将经纬度加到请求中,向百度地图发送请求,注意ak值是在百度地图开放平台注册账号创建应用后给提供的,是唯一的,看下图
16 
17 
18         wx.request({        
19             url: 'http://api.map.baidu.com/geocoder/v2/?ak=ak值&location=' + 
20              res.latitude + ',' + res.longitude + '&output=json',         
21             data: {},            
22             header: { 'Content-Type': 'application/json' },        
23             //成功后的回调函数,返回的ops.data.result.addressComponent包含当前位置的详细信息,依次取出后赋值给address
24             success: function (ops) {          
25                 var address = ops.data.result.addressComponent.province + ops.data.result.addressComponent.city +
26                 ops.data.result.addressComponent.district + ops.data.result.addressComponent.street
27             //修改全局变量location的值,注意这里要用that,用this会提示success回调函数中没有this方法
28                 that.setData({          
29                     location:address        
30                 })                              
31             },                        
32             fail: function (resq) {   
33                 wx.showModal({          
34                     title: '信息提示',    
35                     content: '请求失败',  
36                     showCancel: false,    
37                     confirmColor: '#f37938'  
38                 });                      
39             },                        
40             complete: function () {   
41             }                          
42          })                         
43     }                           
44 })                               
45 }  

 

posted @ 2019-11-28 14:09  待炒的鱼  阅读(157)  评论(0编辑  收藏  举报