微信小程序提供了众多的原生API接口,利用罗盘接口,做了个简单的指南针小程序,搜索小程序【X的实验室】可看效果。

实现方案

利用罗盘接口返回的【数据】,转化为指南针偏移量【度数】,利用CSS3 transform的rotate属性进行2d旋转,旋转量与之双向数据绑定。

核心代码片段

<view class='m-compass'><image class='m-compassbg' src='img/bg.png' style='transform:rotate({{rotate}}deg);'></image>
</view>
onLoad: function () {var m-this = this;wx.onCompassChange(function (res) {m-this.setData({// 计算应偏移度数rotate: 360 - res.direction.toFixed(0)})});
}

优点

即用即走,不需下载安装(相对的),可断网使用

不足

API返回的数据不稳定,手机静止状态,罗盘度数一直浮动,范围跨度比较大,导致体验不够流畅;系统自带罗盘数据就很稳定。

改进方向

可以增加过渡效果、指针移动速率固定、单次范围固定1deg。

文中内容多为原创,若有侵权,请联系核实删除,转载请注明出处
周明杰

转载于:https://www.cnblogs.com/zhoumingjie/p/8521354.html

微信小程序入门-指南针相关推荐

  1. 微信小程序入门二:底部导航tabBar

    小程序底部导航栏组件tabBar,可以参考下官方的API:tabBar 先看代码 //app.json {"pages":["pages/index/index" ...

  2. 天河微信小程序入门《四》:融会贯通,form表单提交数据库

    天河在阔别了十几天之后终于又回来了.其实这篇文章里的demo是接着(天河微信小程序入门<三>)后面就做了的,但是因为最近在做别的项目,所以就偷懒没有发出来.放到今天来看,从前台提交数据到数 ...

  3. 微信小程序入门---01

    目录 微信小程序入门 一.小程序简介 二.第一个小程序 二.小程序代码的构成 三.WXML模块 四.WXSS 样式 五.JS 逻辑交互 六.组件 七.API 八.WXML 模板语法 - 数据绑定 九. ...

  4. 微信小程序入门之常用组件(04)

    常见组件 重点讲解微信小程序中常见的布局组件 view,text,rich-text,button,image,navigator,icon,swiper, radio,checkbox 等 一.vi ...

  5. 微信小程序入门案例-会议邀请函

    微信小程序入门案例-会议邀请函 涉及内容:地图 目录结构: pages\index\index.wxml <view class="box"><view clas ...

  6. 【零基础微信小程序入门开发一】小程序介绍及环境搭建

    什么是小程序? 微信小程序,小程序的一种,英文名Wechat Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用"触手可及"的梦想,用户扫一扫或搜一下即可打 ...

  7. 微信小程序入门教程+案例demo

    微信小程序入门教程+案例demo 尊重原创,转载请注明出处:原文查看惊喜更多 http://blog.csdn.net/qq137722697 首先摆在好姿态,--微信小程序开发也就那么回事.你只需要 ...

  8. 微信小程序入门七登录注册

    上一章介绍了 微信小程序入门六本地缓存和搜索 ,这章介绍小程序的登录注册页面.主要有表单的验证,错误信息的提示,form表单的取值,get / post 请求 ,反馈交互提示框,页面跳转 以及 页面U ...

  9. 微信小程序入门-音乐播放器

    萌新,随便做做,只是了解一下微信小程序,希望可以给看到的胖友一点参考. 之前在网上看到这个人入门四天做完一个,我五天做完了,比他好看,突然有一点自信 然后发现自己特别不乐意重新看自己的代码,总觉得写的 ...

最新文章

  1. ctime库函数的使用
  2. TensorRT学习笔记2 - 基础知识
  3. Product Helper
  4. 深度学习算法和机器学习算法_啊哈! 4种流行的机器学习算法的片刻
  5. Cocos creator -引擎解构
  6. mongodb php 删除,MongoDB / PHP:从数组中删除元素
  7. 中小学教育培训类织梦模板
  8. Android视频开发基础
  9. 20、在Linux中实现类似windows中获取配置文件的函数GetProfileString
  10. Web前端工作笔记013---拦截所有的ajax请求,设置出错信息
  11. AI 外挂!百度 Lens 是如何突破人眼视觉极限的?
  12. 计算机网络是由网络硬件网络软件,计算机网络系统主要由网络硬件系统和网络软件系统组成。...
  13. 【JAVA工具类】批量修改文件名称修改成特定名称
  14. 正则表达式:( ) 小括号、[ ] 中括号、{ } 大括号的区别
  15. python2编码unicode,在不终止Unicode的情况下,在Python 2中编码转义字符的正确方法是什么?...
  16. 西方艺术史-文艺复兴笔记(第四次考试)
  17. 时间序列预测分析(2)How to Develop a Skillful Machine Learning Time Series Forecasting Model
  18. NYOJ 675 Sinking Ship
  19. lea和move的区别
  20. discuz gbk php在utf8,UTF8怎么换成GBK - Discuz!-安装使用 - Discuz! 官方站 - Powered by Discuz!...

热门文章

  1. 接口测试方法论——WebSocket一点通
  2. HTML <figcaption> 标签
  3. 第一次系统发版的过程(一)
  4. windows开启远程连接
  5. 水果(map的二维应用)
  6. 将压缩包变成图片的小技巧
  7. uefi装完系统后无法引导_Win10用UEFI模式安装无法引导启动的原因分析及解决方法...
  8. 蓍草占卜Python法
  9. Set Similarity
  10. Elastic stack技术栈学习(十)— springboot集成ES API详解