Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
hello uni-app x
提交
454c3971
H
hello uni-app x
项目概览
DCloud
/
hello uni-app x
通知
5995
Star
90
Fork
162
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
18
列表
看板
标记
里程碑
合并请求
1
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
H
hello uni-app x
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
18
Issue
18
列表
看板
标记
里程碑
合并请求
1
合并请求
1
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
454c3971
编写于
8月 03, 2023
作者:
DCloud-WZF
💬
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
test(API): navigator
上级
c0c31c9d
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
45 addition
and
8 deletion
+45
-8
pages/API/navigator/navigator.test.js
pages/API/navigator/navigator.test.js
+16
-0
pages/API/navigator/navigator.uvue
pages/API/navigator/navigator.uvue
+8
-1
pages/API/navigator/new-page/new-page-1.uvue
pages/API/navigator/new-page/new-page-1.uvue
+14
-0
pages/API/navigator/new-page/new-page-2.test.js
pages/API/navigator/new-page/new-page-2.test.js
+1
-1
pages/API/navigator/new-page/new-page-2.uvue
pages/API/navigator/new-page/new-page-2.uvue
+6
-6
未找到文件。
pages/API/navigator/navigator.test.js
浏览文件 @
454c3971
jest
.
setTimeout
(
40000
)
jest
.
setTimeout
(
40000
)
const
CURRENT_PAGE_PATH
=
'
/pages/API/navigator/navigator
'
const
CURRENT_PAGE_PATH
=
'
/pages/API/navigator/navigator
'
const
CHILD1_PAGE_PATH
=
'
/pages/API/navigator/new-page/new-page-1
'
const
CHILD2_PAGE_PATH
=
'
/pages/API/navigator/new-page/new-page-2
'
describe
(
'
navigator
'
,
()
=>
{
describe
(
'
navigator
'
,
()
=>
{
let
page
let
page
...
@@ -102,6 +104,20 @@ describe('navigator', () => {
...
@@ -102,6 +104,20 @@ describe('navigator', () => {
expect
(
lifeCycleNum
).
toBe
(
2
)
expect
(
lifeCycleNum
).
toBe
(
2
)
})
})
it
(
'
navigateBackWithDelta2
'
,
async
()
=>
{
await
page
.
callMethod
(
'
setLifeCycleNum
'
,
0
)
await
program
.
navigateTo
(
CHILD2_PAGE_PATH
)
await
page
.
waitFor
(
500
)
page
=
await
program
.
navigateTo
(
CHILD1_PAGE_PATH
)
await
page
.
waitFor
(
500
)
await
page
.
callMethod
(
'
navigateBackWithDelta2
'
)
await
page
.
waitFor
(
500
)
page
=
await
program
.
currentPage
()
expect
(
`/
${
page
.
path
}
`
).
toBe
(
CURRENT_PAGE_PATH
)
lifeCycleNum
=
await
page
.
callMethod
(
'
getLifeCycleNum
'
)
expect
(
lifeCycleNum
).
toBe
(
10
)
})
it
(
'
navigateBackWithDelta100
'
,
async
()
=>
{
it
(
'
navigateBackWithDelta100
'
,
async
()
=>
{
page
=
await
program
.
reLaunch
(
CURRENT_PAGE_PATH
)
page
=
await
program
.
reLaunch
(
CURRENT_PAGE_PATH
)
await
page
.
callMethod
(
'
setLifeCycleNum
'
,
0
)
await
page
.
callMethod
(
'
setLifeCycleNum
'
,
0
)
...
...
pages/API/navigator/navigator.uvue
浏览文件 @
454c3971
<template>
<template>
<view>
<view>
<page-head title="navigate"></page-head>
<page-head title="navigate"></page-head>
<view class="uni-padding-wrap uni-common-mt">
<view class="uni-padding-wrap uni-common-mt
uni-common-mb
">
<view class="direction-row">
<view class="direction-row">
<text class="label">onLoad触发时间戳:</text>
<text class="label">onLoad触发时间戳:</text>
<text>{{ onLoadTime }}</text>
<text>{{ onLoadTime }}</text>
...
@@ -37,6 +37,9 @@
...
@@ -37,6 +37,9 @@
<button @tap="customAnimation" class="uni-btn">
<button @tap="customAnimation" class="uni-btn">
使用自定义动画打开页面
使用自定义动画打开页面
</button>
</button>
<button @tap="navigateToErrorPage" class="uni-btn">
打开不存在的页面
</button>
</view>
</view>
</view>
</view>
</view>
</view>
...
@@ -128,6 +131,10 @@ export default {
...
@@ -128,6 +131,10 @@ export default {
},
},
fail(error) {
fail(error) {
console.log('navigateTo fail', error.errMsg)
console.log('navigateTo fail', error.errMsg)
uni.showToast({
title: error.errMsg,
icon: 'none',
})
// 自动化测试
// 自动化测试
setLifeCycleNum(state.lifeCycleNum + 1)
setLifeCycleNum(state.lifeCycleNum + 1)
},
},
...
...
pages/API/navigator/new-page/new-page-1.uvue
浏览文件 @
454c3971
...
@@ -3,6 +3,9 @@
...
@@ -3,6 +3,9 @@
<page-head title="new-page-1" />
<page-head title="new-page-1" />
<text>onLoad 接收到参数</text>
<text>onLoad 接收到参数</text>
<text>data: {{ data }}</text>
<text>data: {{ data }}</text>
<button @tap="navigateBackWithDelta2" class="uni-btn">
回退到上上层页面
</button>
</view>
</view>
</template>
</template>
...
@@ -24,6 +27,17 @@ export default {
...
@@ -24,6 +27,17 @@ export default {
getLifeCycleNum(): number {
getLifeCycleNum(): number {
return state.lifeCycleNum
return state.lifeCycleNum
},
},
navigateBackWithDelta2() {
uni.navigateBack({
delta: 2,
success() {
console.log('回退上上层页面成功')
},
fail(error) {
console.warn(`回退上上层页面失败: ${error.errMsg}`)
},
})
},
},
},
}
}
</script>
</script>
pages/API/navigator/new-page/new-page-2.test.js
浏览文件 @
454c3971
...
@@ -37,7 +37,7 @@ describe('page-lifecycle', () => {
...
@@ -37,7 +37,7 @@ describe('page-lifecycle', () => {
})
})
// TODO: pageScrollTo 无法触发 onReachBottom, 待修复后调整 lifeCycleNum
// TODO: pageScrollTo 无法触发 onReachBottom, 待修复后调整 lifeCycleNum
it
(
'
onPageScroll onReachBottom
'
,
async
()
=>
{
it
(
'
onPageScroll onReachBottom
'
,
async
()
=>
{
await
program
.
pageScrollTo
(
12
00
)
await
program
.
pageScrollTo
(
20
00
)
const
data
=
await
page
.
data
()
const
data
=
await
page
.
data
()
expect
(
data
.
isScrolled
).
toBe
(
true
)
expect
(
data
.
isScrolled
).
toBe
(
true
)
lifeCycleNum
=
await
page
.
callMethod
(
'
getLifeCycleNum
'
)
lifeCycleNum
=
await
page
.
callMethod
(
'
getLifeCycleNum
'
)
...
...
pages/API/navigator/new-page/new-page-2.uvue
浏览文件 @
454c3971
<template>
<template>
<view class="uni-padding-wrap container">
<view class="uni-padding-wrap container">
<page-head title="new-page-2" />
<page-head title="new-page-2" />
<button @click="pageScrollTo">scrollToBottom</button>
<button @click="pageScrollTo">scrollToBottom</button>
</view>
</view>
</template>
</template>
...
@@ -70,11 +70,11 @@ export default {
...
@@ -70,11 +70,11 @@ export default {
},
},
})
})
},
},
pageScrollTo()
{
pageScrollTo()
{
uni.pageScrollTo({
uni.pageScrollTo({
scrollTop: 1200
scrollTop: 2000,
})
})
}
},
},
},
}
}
</script>
</script>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录