分享是小程序扩散的一种重要方式,小程序中有两种分享方式:
如何决定这些信息的展示呢?通过 onShareAppMessage属性 类型 说明 promise promise 如果该参数存在,则其它的参数将会以 resolve 结果为准,如果三秒内不 resolve,分享会使用上面传入的默认参数
onShareAppMessage() { return { title: "我是分享的标题", path: "/pages/index/index.js", imageUrl: "/assets/zznh.png" } }
获取设备信息
在开发中,我们需要经常获取当前设备的信息,用于手机信息或者进行一些适配工作。 小程序提供了相关个API: wx.getSystemInfo(Object object)
wx.getSystemInfo({ success: (res) => { console.log(res); } })
获取位置信息
开发中我们需要经常获取用户的位置信息,以方便给用户提供相关的服务: 我们可以通过API获取: wx.getLocation(Object object)
wx.getLocation({ success: (res) => { console.log(res); } })
成功回调res中包含下面一些信息
属性 类型 说明 latitude number 纬度,范围为 -90~90,负数表示南纬 longitude number 经度,范围为 -180~180,负数表示西经 speed number 速度,单位 m/s accuracy number 位置的精确度,反应与真实位置之间的接近程度,可以理解成10即与真实位置相差10m,越小越精确 altitude number 高度,单位 m verticalAccuracy number 垂直精度,单位 m(Android 无法获取,返回 0) horizontalAccuracy number 水平精度,单位 m在开发中,某些常见我们需要将一部分数据存储在本地:比如token、用户信息等。
小程序提供了专门的Storage用于进行本地存储。
同步存取数据的方法:
存入: wx.setStorageSync(string key, any data) 取出: any wx.getStorageSync(string key) 移除: wx.removeStorageSync(string key) 清空: wx.clearStorageSync()
// 存入数据 wx.setStorageSync("name", "chenyq") wx.setStorageSync("age", 18) // 取出数据 const name = wx.getStorageSync("name") const age = wx.getStorageSync("age") console.log(name); console.log(age); // 删除数据 wx.removeStorageSync("name") // 清空数据 wx.clearStorageSync()
异步存储数据的方法:注意传入的是对象
wx.setStorage(Object object) wx.getStorage(Object object) wx.removeStorage(Object object) wx.clearStorage(Object object)
// 存入数据 wx.setStorage({ key: "names", data: ["aaa", "bbb", "ccc"], // 存入成功的回调 success: (res) => { console.log(res); } }) // 取出数据 const names = wx.getStorage({ key: "names", success: (res) => { console.log(res.data); } }) // 删除数据 wx.removeStorage({ key: "names", success: (res) => { console.log(res); } }) // 清空数据 wx.clearStorage()
区别: 同步和异步的区别就是, 同步存取代码执行完成后, 可以立即获取数据, 而异步代码执行完成, 不能保证可以立即获取到数据