uni-app之Page——控制页面的方法
Page 模块提供了控制页面的方法。
Page的属性
属性 | 描述 | 返回类型 |
path | 页面路径 | String |
query | 页面参数 | Object |
data | 页面的渲染数据 | Object |
Page的方法
方法 | 参数 | 描述 | 返回值 |
$ | (selector: string) |
获取页面元素 | Element |
$$ |
|
获取页面元素数组 |
|
waitFor |
|
等待直到条件成立 |
|
data |
|
获取页面渲染数据 |
|
setData |
|
设置页面渲染数据 |
|
size |
|
获取页面的大小 |
|
scrollTop |
|
获取页码滚动位置 |
|
callMethod |
|
调用页面的指定方法 |
|
page.$()方法
$()方法用于获取页面的元素。$方法的输入参数说明:
字段 | 类型 | 必填 | 默认值 | 说明 |
selector |
String | 是 | 选择器 |
示例代码如下:
1 const page = await program.currentPage() 2 const element = await page.$('.index-desc') 3 console.log(element.tagName) // 'view'
page.$$()方法
$$()方法用于获取页码元素数组。$$方法的输入参数说明:
字段 | 类型 | 必填 | 默认值 | 说明 |
selector |
String | 是 | 选择器 |
示例代码如下:
1 const page = await program.currentPage() 2 const elements = await page.$$('.list-text') 3 console.log(elements.length)
Page.waitFor()方法
waitFor()方法用于等待直到条件成立。waitFor方法参数说明
字段 | 类型 | 必填 | 默认值 | 说明 |
condition |
String Number Function | 是 | 等待条件 |
- 如果条件是string类型时,那么该参数会被当成选择器,当该选择器选中元素个数不为零时,结束等待。
- 如果条件是number,那么该参数会被当成超时时长,当经过指定时间后,结束等待。
- 如果条件是FUnction类型,那么该参数会被当成断言函数,当该函数返回真时,结束等等。
示例代码如下:
1 const page = await program.currentPage() await page.waitFor(5000) // 等待 5 秒 2 await page.waitFor('picker') // 等待页面中出现 picker 元素 3 await page.waitFor(async() = >{ 4 return (await page.$$('picker')).length > 5 5 }); // 等待页面中 picker 元素数量大于 5
Page.data()方法
data()方法用于获取页码数据。data()方法参数如下:
字段 | 类型 | 必填 | 默认值 | 说明 |
path |
String | 否 | 数据路径 |
示例代码如下:
1 const page = await program.currentPage(); 2 console.log(await page.data('list'));
Page.setData()方法
setData()方法用于设置页面的渲染数据。setData()方法参数如下:
字段 | 类型 | 必填 | 默认值 | 说明 |
data |
Object | 是 | 要改变的数据 |
示例代码如下:
1 const page = await program.currentPage(); 2 await page.setData({ 3 text: 'changed data' 4 });
Page.size()方法
size()方法获取页面的大小。size()的返回值如下:
字段 | 类型 | 说明 |
width | number | 页面可滚动宽度 |
height | number | 页面可滚动高度 |
Page.callMethod() 方法
callMethod()方法用于调用页面的指定方法。callMethod()的参数说明如下:
字段 | 类型 | 必填 | 默认值 | 说明 |
method |
String | 是 | - | 需要调用的方法名 |
...args |
array | 否 | - | 方法参数 |
参考网址
有志者,事竟成,破釜沉舟,百二秦关终属楚; 苦心人,天不负,卧薪尝胆,三千越甲可吞吴。