微信小程序开发常见问题(一)

2018/4/4 17:36:46 2684 8
摘要: 微信小程序开发所遇到的问题,可能是基础性的,也可能是比较难以攻克的问题。对于开发新手来说,可能遇到的更多是基础性的问题。本文就总结些类似的问题及其解决方法或者答案

微信小程序开发所遇到的问题,可能是基础性的,也可能是比较难以攻克的问题。对于开发新手来说,可能遇到的更多是基础性的问题。本文就总结些类似的问题及其解决方法或者答案,供小程序开发者参考一下。

  1、为何脚本内不能使用window等对象?

  答:微信小程序页面的脚本逻辑的运行是在JsCore中,而JsCore是一个无窗口对象的环境,因此也不能在脚本中使用window跟操作组件。

  2、为何zepto/jquery 无法使用?

  答:上一个问题说过,微信小程序脚本内无法使用window等对象,而zepto/jquery 会使用到window对象和document对象,因此它也无法使用。

  3、为什么wx.navigateTo无法打开页面?怎么办?

  答:一个应用最多支持同时打开五个页面,达到5个之后再想打开页面,则wx.navigateTo无法支持新页面的正常打开。这种情况的解决方法是避免多层级的交互方式,或者使用wx.redirectTo。

4、样式表支持什么样的选择器?

答:微信小程序样式表是不支持级联选择器的,它支持的是以.开始的类选择器。

5、本地资源的获取方法是什么?

答:微信小程序的本地资源无法通过css获取,想要获取可以使用网络图片或者 base64,

又或者使用<image/>标签来实现资源的获取。

6、为什么小程序代码上传不成功?原因是什么。

答:微信小程序编译后的代码包需小于等于2M,若是超过2M则代码包将上传失败。

7、HTTPS 请求不成功的原因?

答:tls仅支持 1.2 及以上版本,才能请求成功。

8、网络请求的referer设置格式问题。

答:网络请求的 referer 是不可以设置的,它有固定的格式,其固定格式为https://servicewechat.com/{appid}/{version}/page-frame.html。其中 {appid} 为微信小程序的 appid,{version} 为小程序的版本号,版本号为0的话则表示为开发版。

  9、微信小程序能否支持fetch或promise?

  答:目前微信小程序不支持promise工具,而fetch只是客户端不支持,工具下各版本必须保持统一。

  10、touchmove滑动事件里面的currentTarget. id值不变动,是为什么?

答:ouchmove / touchend 事件的 target / currentTarget 会永远是 touchstart 时的 target / currentTarget,不会存在变动情况。

11、小程序支持SVG吗?

答:小程序目前支持image的src放远程svg,以及background-image里的svg。

12、组件的动态生成与销毁问题

答:小程序暂时不支持动态生成组件,但可以用 wx:for 去渲染多个组件。

13、一些接口的回调IOS和Android不一致怎么办?

答:目前存在的一些接口的回调IOS和Android不一致的情况。比如支付接口,在用户取消支付后,ios只回调complete方法,android则回调fail方法,而且官方开发文档对此没有任何回调说明,因此会造成开发难度增加。目前这个问题尚无明确解决方案,只能等待官方对问题进行反馈。

14、如何修改窗口的背景色?

答:修改窗口的背景色的方法是,使用page 标签选择器,来修改顶层节点的样式。

page {

  display: block;

  min-height: 100%;

  background-color: red;

}

15、为什么不能直接操作 Page.data?

答:在开发微信小程序时,应该要避免在直接对 Page.data 进行赋值修改,需要修改赋值时,请使用 Page.setData 进行操作,这样才能将数据同步到页面中进行渲染怎么获取用户输入。而能够获取用户输入的组件,则需要使用组件的属性bindchange将用户的输入内容同步到 AppService。示例代码如下。

<input id="myInput" bindchange="bindChange" /><checkbox id="myCheckbox" bindchange="bindChange" />

var inputContent = {}

  

Page({

 data: {

 inputContent: {}

 },

 bindChange: function(e) {

 inputContent[e.currentTarget.id] = e.detail.value

 }

})

16、wx.request的POST方法的参数传输,服务器接收不到的bug的原因,如何解决?

答:wx.request post的content-type会默认为“application/json“,如果服务器没用到json来解释的话,想解决这个问题,可以把content-type 设置回urlencoded。代码如下:

wx.request({

....

method: "POST",

header: {

"content-type": "application/x-www-form-urlencoded"

},

...

})


声明:文章"微信小程序开发常见问题(一)"为互诚科技—微信小程序开发公司的原创文章,转载请注明出处,谢谢合作!
标签:小程序商城
电话咨询:18011971195(黄先生)
在线留言:
微信扫码,关注我们
相关文章
  • 提高用户主动推广小程序,会给企业带来什么?

    一个优质的小程序在线上进行推广时,会有用户转发小程序,给企业做二次推广,那用户推广小程序,会给企业带来什么呢?

  • 微信小程序商城的营销如何去打动人心,转化为消费力

    微信小程序的运营与获利,是一个投入到产出的转化过程。如何通过营销去打动消费者的心,让营销的对象

  • 如何让用户主动分享你的微信小程序

    用户分享小程序可以让小程序实现社交裂变传播,推广成本大大降低,给企业的小程序推广带来事半功倍的效果,那有什么方法可以让用户主动去分享小程序呢?

  • 开发小程序商城系统有哪些特异功能

    小程序商城系统作为一个商城系统,肯定拥有商城该有的商品展示、购买下单、微信支付、后台管理等基本功能,今天要介绍的是小程序商城功能之特异功能。

  • 微信小程序开发常见问题(二)

    接着之前的文章,对小程序开发的常见问题进行分析,本文把剩下的相关问题与解析列出,供大家参考与探讨。

  • 9.8亿流量触手可及,用微信小程序打造生态发展闭

    微信官方第三季度财政报表显示,微信和WeChat合并起来共有9.8亿月活用户,这个数据不仅代表着微信和WeChat拥有着强大的用户流量,也体现出这个平台背后隐藏的商机。因为用户聚集

最新评论
网友:
发表评论
剩余200/最多输入200