Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
hello uni-app x
提交
480fd1f5
H
hello uni-app x
项目概览
DCloud
/
hello uni-app x
通知
6005
Star
91
Fork
164
代码
文件
提交
分支
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看板
提交
480fd1f5
编写于
11月 02, 2023
作者:
Q
qiang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix: 更新拦截器示例,页面销毁时移除拦截器
上级
39c7e128
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
55 addition
and
51 deletion
+55
-51
pages/API/interceptor/interceptor.uvue
pages/API/interceptor/interceptor.uvue
+55
-51
未找到文件。
pages/API/interceptor/interceptor.uvue
浏览文件 @
480fd1f5
<template>
<view>
<button @click="addInterceptor">添加拦截器</button>
<button @click="removeInterceptor">移除拦截器</button>
<button @click="navigateTo">跳转到测试页面</button>
</view>
<view>
<button @click="addInterceptor">添加拦截器</button>
<button @click="removeInterceptor">移除拦截器</button>
<button @click="navigateTo">跳转到测试页面</button>
</view>
</template>
<script>
const interceptor = {
invoke: function (options : NavigateToOptions) {
console.log('interceptor.invoke:', options)
const url = './page2'
uni.showToast({
title: `重定向到页面:${url}`
})
options.url = url
},
success: function (res : NavigateBackSuccess) {
console.log('interceptor.success:', res)
},
fail: function (err : NavigateToFail) {
console.log('interceptor.fail:', err)
}
} as Interceptor
export default {
data() {
return {
const interceptor = {
invoke: function (options : NavigateToOptions) {
console.log('interceptor.invoke:', options)
const url = './page2'
uni.showToast({
title: `重定向到页面:${url}`
})
options.url = url
},
success: function (res : NavigateBackSuccess) {
console.log('interceptor.success:', res)
},
fail: function (err : NavigateToFail) {
console.log('interceptor.fail:', err)
}
} as Interceptor
export default {
data() {
return {
}
},
methods: {
addInterceptor() {
uni.addInterceptor('navigateTo', interceptor)
uni.showToast({
title: '拦截器已添加'
})
},
removeInterceptor() {
uni.removeInterceptor('navigateTo', interceptor)
uni.showToast({
title: '拦截器已移除'
})
},
navigateTo() {
uni.navigateTo({
url: './page1',
success(res) {
console.log('res:', res)
},
fail(err) {
console.error('err:', err)
}
})
}
}
}
},
beforeUnmount() {
// 移除 navigateTo 所有拦截器
uni.removeInterceptor('navigateTo')
},
methods: {
addInterceptor() {
uni.addInterceptor('navigateTo', interceptor)
uni.showToast({
title: '拦截器已添加'
})
},
removeInterceptor() {
uni.removeInterceptor('navigateTo', interceptor)
uni.showToast({
title: '拦截器已移除'
})
},
navigateTo() {
uni.navigateTo({
url: './page1',
success(res) {
console.log('res:', res)
},
fail(err) {
console.error('err:', err)
}
})
}
}
}
</script>
<style>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录