【金秋打卡】第16天-vue3.0实现todolist

2022/11/11 4:23:57

本文主要是介绍【金秋打卡】第16天-vue3.0实现todolist,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

第一模块

课程名称:vue3.0实现todolist

章节名称:

  • 4-3 介绍路由传参

讲师姓名:五月的夏天

第二模块

课程内容(概述)

1、讲解如何实现路由传递参数,useRouteruseRoutequeryparams的区别以及如果使用

第三模块

介绍

vue3 中的传参方式和vue2中一样,都可以用query和params传参。对比vue2vue2 中是有this的,vue3是在setup中进行的,且要引入useRouteuseRouter

query传递过来的都是字符串类型,会在地址栏上显示;params传递的参数不会在地址栏中显示,刷新会丢失

query使用pathname都可以,params只能使用name

配置

修改views目录下的About.vue文件

<template>
    <div>
        --------------------------
        About页面--这是query传递的参数:{{ pid }}
        <button type="button" @click="onRet">返回上一页</button>
        --------------------------
    </div>
</template>
<script>
import { defineComponent, ref } from 'vue'
import { useRouter, useRoute } from 'vue-router'
export default defineComponent({
    name: 'About',
    setup() {
        const pid = ref(null)
        // 全局路由对象
        const router = useRouter()
        // 当前路由对象
        const route = useRoute()

        // 接收路由参数pid--query方式
        // pid.value = route.query.pid
        // 接收路由参数pid--params方式
        pid.value = route.params.pid

        const onRet = () => {
            router.back()
        }
        return {
            pid,
            onRet
        }
    }
})
</script>

问题

使用params方式传参报错Discarded invalid param(s) “pid“ when navigating

路由文件需要配置上形参pid

// router/index.js
{
  	path: '/about/:pid',
	name: 'About',
	component: About
}

第四模块

学习截图
图片描述
图片描述



这篇关于【金秋打卡】第16天-vue3.0实现todolist的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程