微信小程序中存在的一些坑

时间:2021-07-09 | 标签: | 作者:Q8 | 来源:网络

小提示:您能找到这篇{微信小程序中存在的一些坑}绝对不是偶然,我们能帮您找到潜在客户,解决您的困扰。如果您对本页介绍的微信小程序中存在的一些坑内容感兴趣,有相关需求意向欢迎拨打我们的服务热线,或留言咨询,我们将第一时间联系您!

  第一:微信小程序">微信小程序中用户登录和登陆状态维护。

  为啥说这个是个大坑呢?我们知道,让用户登录,标识用户和获取用户信息,以用户为核心提供服务,是大部分程序都会做的事情,而用户登陆一般会有三类方式第一种,使用自有账号注册和登陆,比如进入小程序,我们让用户填写手机号注册登陆。第二中使用第三方平台登陆,第三种,使用微信账号登陆。这三种登陆微信小程序本身都支持,但是问题来了。





  小程序中没有Cookie的机制,大家知道,对于原生app或者网页app来说,大部分公司验证用户信息都是通过,进入app时候调用登陆接口,然后把用户信息保存在cookie里面汽车4s店促销活动方案,然后在请求其他接口的时候,通过cookie验证是否登陆,然而,微信小程序不支持。也就是说,原生app和网页app里面接口,不能用后台需要按照小程序的规则从新验证登陆信息,是不是很坑。

  第二:微信小程序不支持html页面。

  微信小程序的。wxml虽然类似html但是它并不是html,微信小程序之间的跳转仅仅限于在app。json里面注册的页面,它是不能跳转的外部页面的,比如,你有一个banner图,点击跳转到外部的一个html页面,这个是不支持的,但是,这个需求又很常用,所以,如果大家想用小程序做项目的时候,最好先考虑一下,这种需求多不多。

  第三:微信不支持DOM和BOM

  上面说了,微信内没有window对象。window对象就是bom(浏览器对象模型)的顶层对象。同样它也没有dom(文档对象模型),对于一些,我们常用的第三库,比如,jquery,zepto等等都是无法使用的,这样,比如我们需要在小程序内根据用户信息生成一个二维码,等等这种需求我们也是无法做的。微信小程序有生成二维码的接口,但是仅仅适用于,生成微信小程序本身的二维码。

  第四:微信小程序页面限制

  微信小程序规定打开页面的个数不得超过5个。微信提供 Tab 栏的设置,可以在app.json中配置(最少两个,最多5个)。在 App营销软件购买 里配置的 Tab 栏将出现在所有的一级页面。但是它有一个问题就是第一次点击 Tab 将会打开一个新的页面。

  微信提供了几个页面跳转的方式,redirectto、navigateto,还有返回。redirectto会直接在原页面上打开新页面,navigateto会新开启一个页面。由于微信在页面数量上有限制,我们产品的层级有比较多,导致无法直接在app.json设置 Tab 栏。所以我们把 Tab 栏单独设计出来。点击 Tab 不开启新页面。在每个初级页面都引用进去,之后二级三级的页面上不使用 Tab 切换,而是需要返回到初级页面。



  第五:页面的逆转传值

  举个例子,我们如果从A页面传值到B页面,可以直接navigateTo()中url携带参数的方式,但是如果我们返回从B传到A就不能了,现实应用,比如我们手机通讯录,点击名字进入详情页面,在详情页面修改了电话号码。返回的时候,怎么传给上个页面,让上级页面显示的电话号码和修改后的一样。ios,可以使用代理传值,或者bloack,vue可以使用$emit和v-on结合这些都可以做到,但是小程序没有这些。这个有两种方式处理,第一种是,使用全局数据存储,把值存在App对象上,或者使用小程序的数据缓存,第二种是从页面路由栈中直接获取和操作目标Page对象(这个我没有试过,这个是我在网上看到别人这么做的,我没有试),这种方式,是通过调用小程序的API: getCurrentPages(),来获取当前页面路由栈的信息,这个路由栈中按照页面的路由顺序存放着相应的Page对象,我们可以很容易的获取到上一级页面的完整Page对象,从而使直接调用Page对象的属性和方法成为可能。


微信小程序中存在的一些坑

上一篇:微信托管省时省力更专业
下一篇:微信公众号营销引领商业新浪潮


版权声明:以上主题为“微信小程序中存在的一些坑"的内容可能是本站网友自行发布,或者来至于网络。如有侵权欢迎联系我们客服QQ处理,谢谢。
相关内容
扫码咨询
    微信小程序中存在的一些坑
    打开微信扫码或长按识别二维码

小提示:您应该对本页介绍的“微信小程序中存在的一些坑”相关内容感兴趣,若您有相关需求欢迎拨打我们的服务热线或留言咨询,我们尽快与您联系沟通微信小程序中存在的一些坑的相关事宜。

关键词:微信小程序_网络整合营销

关于 | 业务 | 案例 | 免责 | 隐私
客服邮箱:545321@QQ.com
电话:400-021-1330 | 客服QQ:545321
沪ICP备12034177号 | 沪公网安备31010702002418号