分类归档

小程序

FWQ
小程序
小程序利用setData修改数组中的某一个值的实现
本篇文章给大家带来的内容是关于小程序利用setData修改数组中的某一个值的实现,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 官方文档是这样的: changeItemInArray: function() { // you can use this way to modify a danamic data path this.setData({ 'array[0].text':'changed data' }) }, changeItemInObject: function(){ this.setData({ 'object.text': 'changed data'…
2024-11-25 阅读全文 →
FWQ
小程序
小程序地图怎么用?
小程序地图怎么用? 使用方法: 1、在手机上打开并登录微信,然后点击下面的“发现”标签。 2、接下来在打开的发现页面中,找到小程序菜单项。 3、在打开的小程序窗口中,我们点击右上角的“搜索”按钮。 4、在搜索框中输入地图关键记事,然后点击搜索结果中的“腾讯地图”菜单项。 5、接下来就会打开我们熟悉的腾讯地图了,在上面的搜索框中输入要查找的地点名称即可。 6、在地图上搜索到我们需要的位置后,点吉“路线”按钮。 7、这时就会给出我们几条导航的路线,选择其中一条路线后,就可以快速进行导航了。 推荐教程:《》 以上就是小程序地图怎么用?的详细内容,更多请关注米云其它相关文章!
2024-11-25 阅读全文 →
FWQ
小程序
让微信小程序开发如鱼得水的方法
  关于微信小程序开发一直想写一篇相关的文章总结和记录下,结果拖延症犯了迟迟没有下笔;这不最近天气不错,于是找一个空闲的下午将这篇文章输出下(好像跟天气没啥关系),那我们就开始吧! 注意:本文默认开发者对微信小程序开发有一定语法基础。小程序开发文档 相关免费学习推荐: 微信小程序小结   在接触的微信小程序开发过程中,不难发现微信小程序为了方便开发人员入手对很多底层api进行了很好的封装,比如针对接口请求的wx.request(),针对路由跳转和页面导航的wx.switchTab、wx.navigateTo···等。虽然在一定程度上简化了开发,但是对于项目工程的系统化构建还是不够的,因此本人在对比以前基于Vue开发项目的经验和自身的开发习惯,总结出如下3点可供参考: 1、全局变量和配置信息统一管理; 2、封装路由守卫相关api:vue-router的router.beforeEach()和router.afterEach()真的香; 3、接口请求公共信息进一步提取封装; 4、封装接口的请求和响应拦截api:axios的axios.interceptors.request.use()和axios.interceptors.response.use()用过的都说好; 从上述四点出发,对微信小程序初始化工程进行规范优化,能够很大程度提高开发效率和进行项目维护管理。封装的好处不只体现在调用的方便上,也体现在管理的方便上,同时,公共操作集中处理,很大程度减少繁杂重复代码。 一、项目初始化    新建微信小程序项目,在项目下新建如下目录和文件: config文件夹:统一管理可配置的信息和变量; erroList.js:接口报错错误码匹配列表文件; globalData.js:全局变量统一管理文件(相当于vuex); keys.js:可配置系统信息管理文件(全局常量命名等); pages文件夹:小程序页面文件管理文件夹(每个页面一个子文件夹目录); router文件夹:路由管理文件件; router.js:对微信小程序5种路由导航api的封装; routerConfig.js:页面路由名称和路径匹配配置文件; routerFilter.js:路由前置拦截封装; servers文件件:接口请求服务管理文件夹; apis文件夹:request请求封装管理和接口api配置管理文件夹; request.js:对wx.request的Promise封装; xxx.js:对应模块的接口管理文件; requestFilter.js:接口请求和响应拦截封装文件; 其他都是初始化默认文件; 二、路由跳转和路由守卫封装…
2024-11-25 阅读全文 →
FWQ
小程序
app.json是什么样的文件
我们使用app.json文件来对微信小程序进行全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、设置多 tab 等。 app.json文件是全局配置文件之一: {   "pages":[           //这个里边都是用来配置所需要用到的界面所在的文件路径,配置为第一行的是默认显示的页面。     "pages/index/index",     "pages/--------/--------”,     "pages/--------/--------",     "pages/--------/-------"//记住最后一行不要加逗号        ],   "window":{      //这个属性是用来配置界面的上边的标题栏的,     "backgroundTextStyle":"light",//这个用来设置文本的风格。     "navigationBarBackgroundColor": "#0066CC",//这个是背景颜色,记住用这种颜色格式的,不要用七种颜色的英文单词(red,blue)等,不然不起效果     "navigationBarTitleText": "--------",//这个就是文字内容     "navigationBarTextStyle":"white"//这个是文字的颜色。   },   "tabBar": {//这个的话就是配置下边的菜单栏。     "color": "#0066CC",//这个是配置文字的颜色     "selectedColor": "#FF0033",//这个是配置选中某个菜单时文字的颜色。     "borderStyle": "#336699",     "backgroundColor": "#99CC00",//这个是整个菜单栏的背景颜色     "list": [//这个是列表,就是具体设置菜单栏       {       "text": "-----",//文字       "pagePath": "pages/index/index",//就是对应到那个页面       "iconPath": "image/--------",//默认的图片…
2024-11-25 阅读全文 →
FWQ
小程序
了解小程序无痕埋点
今天栏目为大家介绍小程序无痕埋点。 背景 微信小程序发布以来,已经从小巧和用完即走的定位,变成了包含复杂功能和完整业务的移动应用。 随之而来的是,生产运营会出现更多难以定位和无法简单复现的bug,尤其本人从事银行业务开发,稳定性要求极高,不然很容易造成客诉甚至资金损失。 另外,为了做了用户研究,需要了解用户如何使用我们的小程序,如路由时序、点击流等。 以上都需要有完整可用的日志来发现和定位生产问题,跟踪用户行为。 日志种类 翻查api文档,小程序打印日志方式有三种,简单描述如下: 控制台日志(console):开发测试阶段用于调试 实时日志(wx.getRealtimeLogManager):实时记录用户操作,官方提供了很好的过滤筛选,可以精准定位到具体日志;日限500w条,不过多个打印会合并成一条上报;最多保留7天。传送门 本地日志( wx.getLogManage):客户端本地日志,用户点击“反馈与投诉”或者点击页面中的反馈组件可以同步到管理台;最大5m。传送门 集合上报和数据脱敏 对于具体的问题可能需要通过不同的日志来定位,或者结合起来相互印证用户的行为。 所以我们需要同时上报几种日志,但对于某些业务敏感数据可能不适合上报到外系统(微信服务器)或保存在客户端本地,我们可以在封装的集合上报函数中先对数据进行脱敏处理。 做法很简单,遍历日志对象,通过正则匹配,把敏感数据打码。 脱敏后的实时日志如下: 可以参考我们封装的日志插件 @wxa/log 无痕埋点 事件捕获 一般来说,前端日志至少包括:路由切换信息,脚本错误日志,接口请求数据,用户交互信息 在小程序中,前三可以通过官方监听接口和封装函数的方法来抓取数据并且上报。 唯独用户交互信息,因为小程序的双线程架构,导致没办法像h5那样直接在document对象中抓取用户事件。只能在每个wxml模版最外层绑定事件来监听用户行为。 但是对于非冒泡事件(如catchtap)和组件事件(如getuserinfo),还是没办法捕获。 再者,也没办法捕获所有事件,组件事件是不会冒泡的。 劫持事件 另辟蹊径,能不能劫持小程序中所有事件函数来实现事件捕获?可以。…
2024-11-25 阅读全文 →
FWQ
小程序
微信公众号开发,实现倒计时的一个功能(纯代码)
以下是我自己编写的一个代码,功能是在微信公众号开发过程中实现倒计时的。效果如下,订单已提交,请在2分57秒内完成支付。纯代码解析。 开始的思路没有考虑页面在后台运行以及锁屏等情况。代码如下: let interval = setInterval(() =&gt; {             let {staticTime} = this.state;             staticTime = staticTime - 1;             if (staticTime  {             let {backGroundTime, staticTime} = this.state;             this.setState({                 backGroundTime:0             });             staticTime = staticTime - backGroundTime - 1;              if (staticTime <p>listenPageShowHideHandle = () =&gt;{</p><pre class="brush:js;toolbar:false;">let {backGroundTime} = this.state; let start, end; let self = this; document.addEventListener("visibilitychange", function() {     if(document.visibilityState == 'hidden'){         start = new Date().getTime();     }else if(document.visibilityState == 'visible'){         end = new Date().getTime();         backGroundTime = Math.floor((end - start)/1000);         self.setState({backGroundTime});         console.log('时间差:', backGroundTime);     }     console.log( document.visibilityState );…
2024-11-25 阅读全文 →
FWQ
小程序
个人小程序应用开发指南
小程序依附于各大平台,支付宝、微信、头条、百度等小程序,都是在平台上进行开发,平台提供对应的技术支持和用户环境。对于个人开发者,这个还是蛮方便的,它本身带有流量属性,易于传播。 便捷开发 最近在弄自己的小程序,所以整一篇文章总结一下。如果你已经开发过小程序,这篇文章可以不用看了。 小程序开发相当的便捷,配合官方文档,、,即可在本地运行起来,如果只是单纯的展示,那只需要开发完之后上传,等待审核了。只需要一点前端基础,就可开发一个自己的小程序,有想法的同学可以行动起来。 如果在开发中出现问题,也可以在求助,微信小程序社区。 不是在给官方推广。如果你希望开发属于自己的应用,小程序是一个可以快速入手的方案,便捷开发,快速发布,自带传播功能。下面我选中微信小程序讲解。 <!-- 项目目录结构 --> |—— component               组件目录 |—— pages                   page页面目录 |   ......more dir            |   |—— index               index页面 |   |  |—— index.js         index.js- js逻辑文件      |   |  |—— index.json       index.json- json配置文件 |   |  |—— index.wxml       index.wxml- wxml页面结构 |   |  |—— index.wxss       index.wxss- wxss页面样式 |—— app.js                  全局js文件 |—— app.json                全局json配置文件 |—— app.wxss                全局样式文件 |—— project.config.json     项目配置 |—— sitemap.json            爬虫文件 登录后复制 将项目导入到小程序开发工具中,就可以开始开发了。添加页面,直接在pages目录添加新的文件目录。具体细节参考 语法支持: 目前最新版本库已经 支持Es6 /…
2024-11-25 阅读全文 →
FWQ
小程序
微信小程序开发过程中图片失真有什么解决办法?
摘要: 很多开发者在微信小程序的开发过程中都可能会遇到图片失真的情况,因为微信小程序的image标签要设置其宽高,不然图片若宽高过大会撑开原始图片大小的区域。我们经常会看到如下的图示: 但是宽高设置固定了会导致有些 … 很多开发者在微信小程序的开发过程中都可能会遇到图片失真的情况,因为微信小程序的image标签要设置其宽高,不然图片若宽高过大会撑开原始图片大小的区域。我们经常会看到如下的图示: 但是宽高设置固定了会导致有些图片和规定显示图片大小的比例不一致而出现失真现象, 为此,想到一个方法,当图片加载成功的时候,会触发bindload事件,通过这个事件我们可以获取到图片的宽高,那么问题就引刃而解了,我们可以把图片原始的宽高获取到,然后算出它的比例,根据需求固定图片的宽(或高),再根据比例来算出相应的高(或宽),原理就是这样,下面放代码: 在utils中创建的一个js文件,暴露其接口imageLoad: function imageLoad(e,zhi,img,or) {     var windowWidth=0;        wx.getSystemInfo({             success: function(res) {                 console.log(1);                 windowWidth=res.windowWidth;              }             })      var $width=e.detail.width,    //获取图片真实宽度          $height=e.detail.height,   //获取图片的真实高度          ratio=$width/$height;   //图片的真实宽高比例         //  console.log(e);         if(or=='height'){              var viewWidth=zhi*ratio,           //设置图片显示宽度             viewHeight=zhi;             if(viewWidth/2&gt;windowWidth){                console.log("你的图片已经超过屏幕宽度");            }            }else{                         var viewWidth=zhi,           //设置图片显示宽度…
2024-11-25 阅读全文 →
FWQ
小程序
微信小程序之拖拽image触摸事件监听的实现方法介绍
这篇文章主要介绍了微信小程序实现拖拽 image 触摸事件监听的实例的相关资料,这里提供image触摸并监听的简单实例,需要的朋友可以参考下 微信小程序实现拖拽 image 触摸事件监听的实例 需要做个浮在scroll-view之上的button.尝试了一下. 实现效果图: Android中也会有类似移动控件的操作.思路差不多.获取到位移的X Y 的变量,给控件设置坐标. 1.index.wxml <image>   </image> 登录后复制 简单的设置一张图片,添加触摸事件监听.点击事件监听.根据触摸事件获取X Y位移,设置为image的位置 2.index.js //index.js  //获取应用实例  var app = getApp()  Page({   data: {    ballBottom: 240,    ballRight: 120,    screenHeight: 0,    screenWidth: 0,   }, …
2024-11-25 阅读全文 →
FWQ
小程序
八个理由让你明白2014微信开发者大会不应错过
摘要:作为一线微信开发商云集、专注在开发实践方面的顶级技术活动,到目前为止本次活动已经得到了业界的极大关注度。为帮助更多同学了解到筹备最新进展,主办方总结了技术团队不应错过2014年微信开发者大会的八个理由。 自去年移动开发者大会微应用专场成功举办后,由CSDN和《程序员》杂志联合主办的2014年微信开发者大会将于8月23日在北京举行。本次大会的内容包含企业服务号开发和高级应用、企业号开发、业务系统对接、高级接口运用、微信支付、智能客服与LBS、HTML5社交应用、微信电商、微信广告自助平台等多方面。作为一线微信开发商云集、专注在开发实践方面的顶级技术活动,到目前为止本次活动已经得到了业界的极大关注度。为帮助更多同学了解到筹备最新进展,主办方总结了技术团队不应错过2014年微信开发者大会的八个理由。 一、专注于“开发”,拒绝空谈理论。与案例相结合,力求将内容讲透。与当前市场上大多数相关微信活动偏泛谈趋势、介绍自己产品功能或者微信营销话题不同,本次微信开发者大会将聚焦在技术人群(含产品经理)上,每位讲师的演讲时间长达90分钟(70分钟、20分钟互动答疑)。主办方鼓励与会者带着疑问来参会,带着解决方案离场,有搞不懂的疑问,欢迎参会者“抓住”讲师问个究竟。 例如,微信官方推荐的招商银行信用卡服务号开发商深圳云软联合创始人兼技术副总裁黄榕振将带来的《以招商为例,微信公众帐号企业应用开发高级篇》,内容包括企业应用微信公众帐号开发的几个关键阶段、细谈CRM绑定、分离式CRM、交互设计的核心、系统安全性的几个问题、功能设计与用户痛点、某银行功能使用频度分析、多客服高级应用、分层次的软件架构设计、高性能和高可用设计、多公众号分权分域管理、分组群发高级应用几个主题展来深入演讲。 深圳云软做过的微信企业服务号案例还包括国海证券、洲际酒店、民生银行、农业银行、中国电信、广东联通、桃源居物业… ,正在或有志于将来做企业微信服务号的同学可以现场与黄榕振交流。 二、主题丰富,基本覆盖了微信开发不同维度的多个层面。从演讲主题分布来来看,本次大会内容(首批议程发布)涵盖了企业服务号开发、企业号开发、HTML5社交(游戏)、微信电商(微信小店)、微信支付、智能客服与LBS、高级接口权限应用(以及在高级接口权限申请不下来的时候如何用“土”办法来解决)。从开发语言上来看,既包括了Java系的讲师柳峰,他是国内最早做公众平台应用开发的“先驱”之一,CSDN优秀博主,在CSDN博客上撰写了微信公众平台开发系列教程,深受网友欢迎并得到广泛传播。 而另一位讲师、方倍工作室创始人陶瑾,则是PHP系的代表,他也是国内最早做微信公众平台开发的人之一、在博客园撰写了上百篇微信系列开发博文并被广泛传播、《微信公众平台开发最佳实践》作者。本次他的演讲主题将是《微信支付功能的原理和高级开发 》,内容涵盖各大功能特性及接口(身份识别、支付功能、交易通知、订单查询、发货通知、告警通知、维权通知)等原理及与服务器的交互实现方式,着重介绍各项接口的签名算法过程。 另外,前Zynga中国总经理、云智联CEO田行智将为大家带来《如何打造百万级自然增长的微信HTML5应用? 》演讲,他和团队所开发的新移动社交应用碰碰里验证了0推广、无任何激励手段,但却拥有每天100K 自然增长的微信HTML5应用,该应用目前注册用户已达到数百万。他将为大家分享社交游戏“碰碰里”的技术和产品心得,如何轻松打造百万级自然增长的微信应用。 三、2014年优秀微信开发商征集和投票活动火热进行中。与2014年微信开发者大会同期举行的还有优秀微信开发商的投票评选活动正在如火如荼进行中,通过征集已经提交上来几十家开发商资料,并已添加到投票页面(持续添加及更新中),供CSDN网友投票。从7月21日上线到8月15日是提交资料和投票时间。在里面,我们看到了微应用、乐享微信、云商、微信生意宝、微行业、微网站、志宁微时代、微营家、阁下微信、点点客等分布在不同行业的开发商。届时,这些开发商的获奖代表也将齐聚本次微信开发者大会。欢迎大家报名与他们现场交流。 四、现场OpenSpace开放讨论环节。为达到满足不同参会者的需求,主办方安排了更多的社交和沟通机会,除了讲师演讲现场的互动答疑时间,特意增添了OpenSpace环节,届时参会者将分成几组,就微信开发(运营)相关的话题分组自由讨论以及和讲师深度探讨。 五、坚持收费策略,参会者质量高。根据主委会目前的购票者、团购票务信息及电话反馈显示,目前购票的参会者级别和技术实力来看,包括了联想、金融公司、保险公司、房产公司、猎头公司、广告公司、一线微信开发商等人群。尤其是通过CSDN CTO俱乐部(上万人技术管理者实名俱乐部)的报名参会者。不少公司都是CTO牵头,以团购形式购票。据电话反馈,目前购票的主要是三类人群:1)正在摸索做微信企业服务号或企业号的传统公司及互联网公司;2)正在微信平台开发一线的开发商;3)有志于在微信平台开发的创业者或工作室。或许,今年微信开发者大会餐桌上或会议室里坐在你身旁的人就是你的潜在技术伙伴。 六、神秘嘉宾参与。该嘉宾的时间还在最后敲定中,暂不透露。他或许不直接参与演讲,但会在现场和参会者交流微信平台规则及开发者注意事项。 七、活动结束后的持续服务。在2014年微信开发者大会结束后,你将优先受邀加入微信开发者微信群,持续与一线开发者保持学习交流。 八、此外,今年微信开发者大会举办的时间是8月23日(周六)。不耽误工作时间,用自己的休息时间来参与技术培训!抢占微信平台生态链。如果您的公司正在或有志于做基于微信平台的开发,想抓住微信平台机遇建立你的生态链,那就不应该错过本次2014微信开发者大会。 以上就是八个理由让你明白2014微信开发者大会不应错过的详细内容,更多请关注米云其它相关文章!
2024-11-25 阅读全文 →