小程序开发过程中问题终结

picker 使用

这次开发picker使用了默认的样式,在定义的数组var arr = [ 'aa','bb',' ', 'cc'];中有一个值是空字符串时,需要让picker里包含的text/view的高度等于父级高度,这样才可以点击picker从下方弹出,如果不给text/view设置高度,点击picker是没有任何反应的。

ios上下滑动出现空白

在对应的页面的json文件上加  "disableScroll":true , 切不可加在app.json中.


request请求

GET:

POST:

弹出框

如果使用request请求,要在请求开始的时候加一个loading的图标体验会好一些,在数据加载完成后再隐藏loading,操作如下图:

关于ios顶部下拉刷新的解决

小程序中默认是关闭下拉刷新的,但是ios还是有下拉的效果,所以要解决这个方法就把bindtouchstart改成catchtouchstart;这个解决办法使用的前提是,在move事件的事件源内不能有其他的事件,如果还绑定其他事件,那么绑定的其他事件将不会触发,必须改回bindtouchstart才会触发。

关于表单提交的问题

在小程序中表单提交用form,button的formType必须为submit,如下图

真机测试问题

在真机上测试,必须开启调试模式才能得到request的数据,关闭的情况下,request数据是都不能获取的。
在开发过程中要把下图最后一个勾选上,不然会报错。

报错信息:

在上传时取消勾选,并需要管理员配置服务器设置,否则也会请求不到数据。

保存图片到系统相册

要把图片保存到本地,在打开小程序的时候需要用户授权:

保存图片到相册:

图片的尺寸

image组件中 mode可以设置图片的缩放和显示,但是image有默认的尺寸 300*225,要想根据图片的大小设置图片的显示尺寸,需要进行一些计算:
例如下面图片宽度等于手机屏幕宽度,那么高度就需要根据比例计算一下:
   获取图片的宽高:
   <image style="width:{{windowWidth}}px;height:{{imageH*windowWidth/imageW}}px" mode="aspectFit" src="{{src}}" bindlongtap="saveImg" bindload="loadImg"></image>
    loadImg: function(e){
          console.log(e.detail.width+' ---- '+e.detail.height)
          this.setData({imageW: e.detail.width,imageH: e.detail.height})
    },

猜你喜欢

转载自blog.csdn.net/rainbow8590/article/details/78330679