Skip to content

Commit 15e7349

Browse files
committed
feat: 增加 react native 下获取元素布局信息的逻辑
1 parent 6a4dae9 commit 15e7349

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

src/utils/get-rect-by-taro.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { createSelectorQuery } from '@tarojs/taro'
22
import { getRect, inBrowser } from './use-client-rect'
3+
import { rn } from './platform-taro'
34

45
export interface Rect {
56
dataset: Record<string, any>
@@ -28,6 +29,25 @@ export const getRectByTaro = async (element: any): Promise<Rect> => {
2829
if (inBrowser) {
2930
return Promise.resolve(getRect(element))
3031
}
32+
if (rn()) {
33+
return new Promise((resolve) => {
34+
element.measure(
35+
(
36+
xPos: number,
37+
yPos: number,
38+
measureWidth: number,
39+
measureHeight: number,
40+
pageX: number,
41+
pageY: number
42+
) => {
43+
const rect = makeRect(measureWidth, measureHeight)
44+
rect.left = pageX
45+
rect.top = pageY
46+
resolve(rect)
47+
}
48+
)
49+
})
50+
}
3151
// 小程序下的逻辑
3252
return new Promise((resolve, reject) => {
3353
createSelectorQuery()

0 commit comments

Comments
 (0)