@mypui/myp-ui
Version:
第一个高效且强悍的nvue开源组件库。做最好、最顺手的nvue组件库
56 lines (54 loc) • 970 B
JavaScript
export function getElSize(name, ins) {
return new Promise((res, rej) => {
// #ifndef APP-NVUE
const el = uni.createSelectorQuery().in(ins).select('#' + name);
el.fields({
size: true,
rect: true
}, (data) => {
if (data) {
res(data);
} else {
rej({})
}
}).exec();
// #endif
// #ifdef APP-NVUE
let _el = ins.$refs[name][0]
if (!_el) {
_el = ins.$refs[name]
}
dom.getComponentRect(_el, (data) => {
if (data.result) {
res(data.size)
} else {
rej({})
}
})
// #endif
})
}
export function getTouchPoint(e) {
if (!e) {
return {
x: 0,
y: 0
}
}
if (e.touches && e.touches[0]) {
return {
x: e.touches[0].pageX,
y: e.touches[0].pageY
}
} else if (e.changedTouches && e.changedTouches[0]) {
return {
x: e.changedTouches[0].pageX,
y: e.changedTouches[0].pageY
}
} else {
return {
x: e.clientX,
y: e.clientY
}
}
}