vue中this.$router.push()通过Param传参错误

 问题:在使用this.$router.push()携带参数进行跳转页面时,发现参数未能传递到要跳转的页面。

 toPage(article){
            this.$router.push({path:'/passage',params: {passage:article}})
        },

跳转方法

 export default {
        name: "passage",
        data() {
            return {
                passage : [null]
                }
            },
        mounted(){
            this.passage=this.$route.params.passage
    },
    }

 接受参数方法

vue中this.$router.push()通过Param传参错误_第1张图片

 控制台报错

查阅文献后发现path无法与params一起使用,原因是因为动态路由也是传递params的,所以在 this.$router.push() 方法中 path不能和params一起使用,否则params将无效。需要用name来指定页面更改后代码如下:

 toPage(article){
            this.$router.push({name:'passage',params: {passage:article}})
        }

 

你可能感兴趣的:(vue.js,前端,javascript)