vue使用router-view调用页面方式
使用router-view调用页面
在项目中,需要在其中一个页面,调用很多其他页面的表单,所以使用router来实现页面的调用。
vue-router有传递参数的两种方式,get和post。
1.get方式
页面跳转
this.$router.push({path:'/xxx',query:{id:1}});//类似get传参,通过URL传递参数
新页面接收参数
this.$route.query.id
2.post方式
页面跳转
//由于动态路由也是传递params的,所以在 this.$router.push() 方法中 path不能和params一起使用 //否则params将无效。 //需要用name来指定页面。 this.$router.push({name:'page2',params:{id:1}});//类似post传参
新页面接收参数
this.$route.params.id
注意:在页面进行刷新的时候经常会遇到参数变了,但是新页面接受的参数没有变化。这种问题可以通过加watch解决。
watch: { '$route'(to, from){ //在这里重新刷新一下 this.getParams(); } }
实例
首先,我们的页面是wfqlc.vue(我的申请),被调用的页面为pjzydgl.vue(票据准印单管理)。
1.在router的index.js文件里,给我的申请页面加children。
2.在需要跳转的地方添加router-view。
<!-- 附加单据 --> <Modal title="附加单据" v-model="fjdjModal" :mask-closable="false" :transfer="false" width="600" > <div style="height:300px;width:100%;overflow-y: auto;" class="modal-wrap"> <router-view></router-view> </div> </Modal>
3.在我的申请wfqlc.vue页面,把请求发送出去。
// 附加单据 getAdditionalDocument (row) { this.fjdjModal = true this.$router.push({ // path: `/wfqlcfjdj/${row.webUnitUrl}`, path: `/wfqlcfjdj/pjzydgl`, query: { // businessIndex: row.businessId businessIndex: '6883a5c4-b706-424e-ba88-4acc83eded2f' } }) },
4.请求会拼在地址栏发送过去
path传的参数跳转到了对应的页面,businessIndex获取到了对应的值。
5.跳转到票据准印单管理pjzydgl.vue页面。
mounted () { if (this.$route.query.businessIndex) { this.tzdetail(this.$route.query) } }
6.根据 businessIndex获取到对应的值。
methods { tzdetail (data) { this.detail(data.businessIndex, 'detail') }, detail (row) { const url = `${window.zvconfig.url.pjsyDetail}?id=${row}` this.$axios.get(url).then(res => { if (res.data.status === '00000') { this.detailForm = res.data.data this.childTableData = res.data.data.detailList } else { this.$Message.error(res.data.msg) } }) }, // 关闭弹窗回到我的申请页面 cancelModal () { if (this.$route.path.indexOf('/wfqlcfjdj/') > -1) { this.$router.push({ path: '/wfqlc' }) } }, }
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
vue响应式系统之observe、watcher、dep的源码解析
这篇文章主要介绍了vue响应式系统之observe、watcher、dep的源码解析,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2019-04-04Vue中ref、reactive、toRef、toRefs、$refs的基本用法总结
这篇文章主要给大家介绍了关于Vue中ref、reactive、toRef、toRefs、$refs的基本用法,以及他们之家的区别,文中通过实例代码介绍的非常详细,需要的朋友可以参考下2022-11-11
最新评论