vue中的路由传参
路由传参的三种写法
首先要采用编程式导航
第一种:字符串形式
this.$router.push("/search/" + this.keyword + "?k=" + this.keyword.toUpperCase());
路由配置中的 path 需要占位
第二种:模板字符串新形式
this.$router.push(`/search/${this.keyword}?k=${this.keyword.toUpperCase()}`);
路由配置中的 path 需要占位
第三种:对象形式
this.$router.push({name: "search", params: {kerword: this.keyword}, query: {k: this.keyword.toUpperCase()}});
需要给路由命名
注:
1、路由跳转传参时,对象的写法可以是 name、path 的形式,但是 path 不能和 params 一起使用
2、如果路由配置中存在 params 参数占位,当你不传递 params 参数时 URL 存在问题。此时可以在 path 中占位的后面加上 ? 可以让 params 可传可不传
3、当 params 可传可不传时 传递空串 可以用 || undefinde 解决
4、路由组件可以通过 props 传递参数。布尔值只传递 params 、对象写法可以额外传递一些如 a: 1, ...... 、函数写法可以传递 params 和 query 参数。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~