微信小程序爬坑

本文聚焦微信小程序开发问题,指出组件wxss中不能用标记名称、ID、属性选择器,建议改用class选择器;提到triggerEvent事件可换成emit;还说明new Date().getTime()在ios上失效的解决办法,以及开发者工具调用sdk获取位置不准确、获取鼠标点击事件坐标等问题。
  1. 微信小程序报错
    Some selectors are not allowed in component wxss, including tag name selectors, ID selectors, and attribute selectors.(./components/loginCount.wxss:55:1)This wxss file is ignored.
    组件wxss中不允许使用某些选择器,包括标记名称选择器、ID选择器和属性选择器

    注意:组件和引用组件的页面不能使用id选择器、属性选择器和标签名选择器,改用成class选择器就好了

  2. triggerEvent事件在小程序中可以换成emitthis.emit this.emitthis.emit(‘myevent’, detail);//使用$emit事件,将绑定在此组件的myevent事件,将返回值传递过去

  3. new Date().getTime()获取时间戳在ios上失效
    解决方法: new Date(date.replace(/-/g, ‘/’)).getTime()

  4. 微信小程序在微信开发者工具调用小程序sdk获取当前位置会不准确,在手机上是没毛病的

  5. 获取当前鼠标点击事件
    注意:获取当前点击点所在的坐标:e.detail.x ,e.detail.y

以下代码为获取当前点击点相对于当前dom所在的坐标(返回的单位是px)

mapOnClick: function(e) {
				e = e || window.event;
				const query = wx.createSelectorQuery()
				query.select('#monitor_map').boundingClientRect()
				query.selectViewport().scrollOffset()
				let that = this
				query.exec(function(res) {
					var offsetX = e.detail.x - res[0].left - res[1].scrollLeft;
					var offsetY = e.detail.y - res[0].top - res[1].scrollTop;
					var x = offsetX ;
					var y = offsetY;
					console.log(x, y)
				})
			},
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值