实现一个指南针功能的微信小程序
生活随笔
收集整理的這篇文章主要介紹了
实现一个指南针功能的微信小程序
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、小程序的實現過程
該小程序實現了指南針功能,能夠通過圖片的旋轉指示當前的方向。實現的方法就是通過羅盤API函數onCompassChange(function
callback)來算出當前便宜的角度,然后將該角度的值rotate傳到image組件中transform:rotate({{rotate}}deg),實現綁定的圖片的旋轉。同時還通過當前的偏轉角度來顯示出相對于正北方向的便宜角度。
羅盤傳感器的使用方法: 與羅盤傳感器有關的API函數包括: wx.startCompass(Object object)
wx.stopCompass(Object object) wx.onCompassChange(function callback)
wx.startCompass()和wx.stopCompass()分別
用于啟動和停止羅盤監聽,它們的參數屬性包含:success、fail和complete。
wx.onCompassChange(function callback)用于監聽羅盤數據變化事件。監聽頻率是5次/秒,
接口調用后會自動開始監聽,可使用 wx.stopCompass 停止監聽。 wx.onCompassChange(function
callback) 的參數為羅盤數據變化事件的回調函數。
二、該回調函數的參數屬性如下:
| direction | number | 面對的方向度數 |
| accuracy | number/string | 精度 |
實現的效果圖:
視頻展示如下:
微信小程序實現一個指南針
三、代碼:
<!--index.wxml--> <view class="box"><view class="title">哈嘍指南針</view><image class="jiantouStyle" src="/pages/images/jiantou.jpg"></image><image class='m-compassbg' src='/pages/images/compass.jpg' style='transform:rotate({{rotate}}deg);'></image><view class="compassStyle">{{area}} {{detailArea}}°</view><view class='lable'>#等風來,不如追風去#</view> </view> /**index.wxss**/ .title{font-size: 30px;font-weight: bold;color: darkkhaki; } .m-compassbg{width: 260px;height: 260px;border-radius: 50%; } .jiantouStyle{width: 90px;height: 90px;margin-bottom: 30px; } .compassStyle{font-size:60rpx;margin-top:80rpx; } .lable{margin-top: 20px;font-size: 26px;color: lightseagreen; } /**app.wxss**/ .box {height: 100%;display: flex;flex-direction: column;align-items: center;justify-content: space-between;padding: 100rpx 0;box-sizing: border-box; } //index.jsPage({data: {rotate:0,area:"東偏北",detailArea:90},onLoad: function () {var that = this;wx.onCompassChange(function (res) {// 計算應偏移度數var rotate = 360 - res.direction.toFixed(0)var area = parseInt(rotate/90)var detailArea = rotate%90that.setData({rotate:rotate})if(area==0){that.setData({area:"西偏北",detailArea: 90-detailArea})}else if(area==1){that.setData({area: "西偏南",detailArea: detailArea})} else if (area == 2) {that.setData({area: "東偏南",detailArea: 90-detailArea})}else{that.setData({area: "東偏北",detailArea: detailArea})}}); }, })總結
以上是生活随笔為你收集整理的实现一个指南针功能的微信小程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Surface Pro4详细拆机经验记录
- 下一篇: 梧桐山记