微信小程序爬坑

1、使用components时特别注意,无论是页面的css文件还是components组件的css文件中,慎重使用【元素选择器(element,也就是直接写标签名的那种形式)】,原因我们通过举例说明,假如我们有如下界面

test.wxml

test.wxss

其中,有两个组件(components),test和test2

test1.wxml

test2.wxml

此时有如下几种情况:

  • 如果test1.wxss和test2.wxss  都不给<text>标签加颜色(用元素选择器),那么此时两个组件的颜色会使用test页面中的<text>标签颜色
  • 如果test1.wxss和test2.wxss  中任何一个给<text>标签加颜色(用元素选择器),比如绿色。那么此时两个组件和页面test的颜色会使用组件中的<text>标签颜色,我们这里是绿色
  • 如果test1.wxss和test2.wxss  都给<text>标签加颜色(用元素选择器),那么此时两个组件和页面test的颜色会使用test.json文件中引用顺序排在上面的那个组件中的<text>标签颜色

正是由于这种复用关系,如果在不清楚该关系的情况下不建议使用元素选择器,即使了解了这种复用关系,从代码的角度建议慎重使用元素选择器,class选择器和id选择器则不会出现这个问题

2、wxml文件中支持"data-"的形式传递数据给js,我们可以通过currentTarg.dataset.key的形式获取传递过来的数据,但是这里面要注意一个问题,如果我们"data-"后面跟的单词中包含大写字母,例如"data-Test",那么"currentTarg.dataset.data-Test"是获取不到我们传递的数据,原因是微信小程序会自动将单词中的所有大写字母转换成小写字母,"currentTarg.dataset.data-test"这样才能获取数据

3、wx.request和wx.uploadFile两个api的success 回调函数中的data的数据类型是不一样的,wx.request的data类型支持string、json对象和json数组,但是wx.uploadFile的data类型只支持string,为什么要强调这个东西,因为我们平时一般都是使用wx.request,返回的数据都是直接用"data.key"或"data[index]"的形式调用,但是一旦我们上传文件时调用wx.uploadFile接口时如果想使用接口返回的数据,就必须先将字符串转换成json(即使用JSON.stringify),否则直按照json对象和数组的调用方式是不可以的,对比如下所示:

wx.request

wx.uploadFile

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值