【微信小程序】记录一些菜鸡自己遇到的问题

原创 shawadekim 随笔 javascript 131阅读 2018-10-11 18:05:31 举报
1.关于小程序正式版本的启动页

小程序上传代码成为体验版,可以设置扫码后进入的页面地址;然而提审成为正式版本没有设置启动页路径的选项,启动页是选取app.json里面pages下配置的第一条页面路径作为启动页

上面小程序正式版本的启动页就是welcome页面

2.关于微信开发工具有数据,真机访问开发版或者体验版没有数据的情况

这个问题是wx.request的接口地址没设置在小程序的合法域名

3.在数据绑定的时候,使用wx:for循环,声明wx:key的一些说明

使用wx:for循环遍历的时候,要在后面声明一个wx:key,它的值必须是遍历的数据中不是相同且不会动态改变的值,一般会取数组的每一个id在作为wx:key的值,例如遍历的数据是:[{id: "2", name: "大强"},{id: "1", name: "大强"}];
如果遍历的数组本身就是不同,例如遍历的数据是:['1','2','3']直接用wx:key="*this";

4.canvas绘图及图片保存本地相册的问题

用canvas绘图的时候,对绘成图的canvas的操作要放在canvas.draw()的回调中操作,不然可能会出现图没绘成功,后续的操作已经执行
图片要保存在本地的相册,需要将所有的图片先保存在本地路径,需要在小程序后台配置安全的downloadfile域名
将canvas生成的图片保存到手机本地相册具体步骤:
1.将canvas上存在的网络图片的域名配置成安全的downloadfile域名,位置在小程序官方后台的设置-开发设置-服务器域名处配置
2.使用wx.getImageInfo获取图片的本地路径,path为本地路径

3.将canvas生成临时路径,再在生成临时路径的回调中调用保存到手机的api就可以了

5.如何改变一个当它的类型为数组时的绑定数据里一个数组元素的值

不知道怎么描述,直接来例子:
page里面的参与页面渲染的数据data中的一个数据,当它的数据类型是个普通的字符串或者数字、布尔值的时候,例如:

我们要更改它的属性只需要:

而当它的属性是个数组的时候:

如果我们要改变select里面id为2的check为true:

6.小程序加入数据分析的自定义分析事件


这个例子中,用一个动作上报“加入购物车”事件。

trigger:触发条件,click,表示点击操作触发;
action:触发时动作,一次性上报,表示在每一次 click 中,收集数据并上报一条数据;
page:触发页面,填 viewProduct(viewProduct 是商品详情页);
element:触发元素,填 .addToCart(.addToCart 是一个“加入购物车”的按钮);
data:事件的数据及其来源,用“字段名 字段值”来表示,其中字段值是页面上的一个变量。
详细说一下字段值,他有如下规则:

填写的变量名,默认从page实例的data字段中获取
若想收集由list变量渲染的列表中的某一项数据,则可用list[].x表示,这里会根据当前填写的element(只能是class)得到的NodeList的第几个来决定数组下标。
若列表是二维的,则可用list[]
若想取得数组的下标,则可用list[].$INDEX表示
若想取得wxml中data-系列属性的值,则可用$DATASET.表示
若想取得app实例的数据,则可用$APP.x表示,只支持获取基本类型的数据,如number、string、boolean

评论 ( 0 )
最新评论
暂无评论

赶紧努力消灭 0 回复