我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Vue的URL转跳与参数传递方法是什么

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Vue的URL转跳与参数传递方法是什么

这篇“Vue的URL转跳与参数传递方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Vue的URL转跳与参数传递方法是什么”文章吧。

    Vue URL转跳与参数传递

    写业务中,从一个页面跳转到另一个页面,经常需要传值和取值,如何实现?

    1.通过router-link进行跳转

    使用query传递参数,路由必须使用path引入

    <-- 在a页面进行传值 -->    <router-link :to="{path: '/home', query: {key: 'hello', value: 'world'}}">  <button>跳转</button></router-link>

    跳转地址 => /home?key=hello&value=world

    在b页面取值: this.$route.query.key

    使用params传递参数,路由必须使用name引入

    <-- 在a页面进行传值 -->    <router-link :to="{name: '/home', params: {key: 'hello', value: 'world'}}">  <button>跳转</button></router-link>  

    跳转地址 ==> /home

    在b页面取值:this.$route.params.key

    2.$router方式跳转

    通过query

    this.$router.push({  path: '/detail',  query: {    name: 'admin',    code: 10021  }});

    跳转地址 => /detail?name=admin&code=10021

    取值:this.$route.query.name

    3.跳转外部链接

    如果是vue页面中的内部跳转,可以用this.$router.push()实现,但是如果用这种方法跳到外部链接,就会报错,原因是直接把外部链接加在了http://localhost:8080/#/的后面,这就导致跳转出现问题。

    那么如何跳转到外部链接呢,其实只需用 window.location.href = &lsquo;url&rsquo;就能实现。

    具体代码如下:html <span @click="See(url)">点击转跳</span>

    上面是触发一个点击事件,其中url是传给see的url链接,下面是事件执行的函数

    js See(e) { window.location.href = e }

    Vue参数传递的几种方法

    开发过程中参数传递

    1. 通过name传递参数

    Vue的URL转跳与参数传递方法是什么

    图一

    Vue的URL转跳与参数传递方法是什么

    图二

    我们常把页面的路由配置在图一中的 router 文件夹下的 js 文件中,图二为配置的内容。这其中的 name 属性是可以作为参数传递的,在模版中直接只用 {{$route.name}} 接收,即可以在模版中显示。

    2. 通过<router-link>中的to传递参数

    使用 < router-link to=" /page "> page < /router-link > 可以实现页面的跳转,这里面 to 是可以带上参数跳转的,我们需要在给 to 进行绑定,即 : to (v-bind:to)

    <router-link :to="{name:'page',params:{data:'我是App.vue传至page.vue的参数'}}" >page</router-link>
    • 这其中需要注意的是要给 to 加上绑定,后面跟的是对象形式的字符串。

    • 其中的 name 是我们在路由配置文件(上图图二)中配置的 name 两者要对应。

    • params 即是我们要传的参数,它可以是多个值。

    随后在对应的模版页面中(这里为 page.vue)进行接收。

    {{$route.params.data}}

    3. 在业务逻辑中实现页面跳转并传参

    当在业务逻辑中需要实现页面跳转经常能够使用到编程式导航:

    • this.$router.go(1),进入下一级

    • this.$router.back(-1),返回上一级,通俗的说就是前进与后退。

    • this.$router.push(&rsquo;/page&rsquo;),跳转到 page.vue

    那么我们应该如何传递参数呢?例如,我们在判断完某个条件后需要跳转到 page 页并且需要传递 age 和 address 两个参数过去,我们的操作方法是:

    App.vue

    <div @click="toPage">page</div>

    我们在需要的地方加上点击事件

    toPage(){      this.$router.push({        name: 'page',        params: {          age: 22,          address: 'China'        }      })    }

    随后在 methods 中写入该事件,需要注意的是这里面的 name 同样是要与在配置路由时配置的 name 属性保持一致。

    params 是我们传入的参数,可以是常量也可以是变量。

    page.vue

    在 page.vue 中接收参数,可以在生命周期的 mounted() 接收并且放入 data ,再在模版上显示出来。

    <template><div>{{myage}}-{{myaddress}}</div></template><script>export default {name: "page111",data() {return {myage: '',myaddress: ''}},mounted(){// 在挂载时接收到参数并且赋值this.myage = this.$route.params.age;this.myaddress = this.$route.params.address;},}</script>

    4. 利用url传参

    在项目开发过程中常常通过 url 进行参数传递,在 vue-cli 中该如何操作呢?

    在配置路由处以冒号形式,在 url 后方加上参数(/class="lazy" data-src/router/index.js)

    {path: '/page/:pageId/:pageTitle',    name: 'page',    component: page}

    在< router-link >< /router-link > 的 to 属性中加入参数(App.vue)

    <template>  <div id="app">    <img class="lazy" data-src="./assets/logo.png"><br/>      <router-link to="/" >index</router-link>      <router-link to="/page/1/标题" >page</router-link>    <router-view/>  </div></template>

    在 page.vue 中接收参数

    <template><div><p>id: {{$route.params.pageId}}</p><p>标题: {{$route.params.pageTitle}}</p></div></template>

    5. 父组件与子组件之间传参

    项目中组件是经常被使用到的,那么父组件与子组件之间的联动是非常重要的。

    先建立一个组件并且使用,在 components 文件夹下新建 component.vue 文件作为组件。

    <template><div><p>我的组件 {{msg}}-{{content}}</p></div></template><script>export default{name: 'child',props: ["msg","content"],}</script>

    随后在 page.vue 中引入该组件,在 < script > </ script > 中 import 且引用,随后在模版中使用,如下:

    <template><div><children></children></div></template><script>import children from "./component";export default {name: "page",components: {children}}</script>

    要传递参数,可以在 < children > </ children >标签中加入要传入的参数,并且在组件(component.vue)中使用 props 接收再使用插值在模版中显示。

    同时我们也可以给要传的参数绑定起来,如下第二种写法,在参数前加上冒号(v-bind)这样我们就能在 data 中编辑我们的参数了。

    // page.vue<children msg="我是信息" content="我是内容"></children><children :msg="message" :content="content"></children><script>import children from "./component";export default{name: 'page',components: {children},data(){return {message: '我是信息',content: '我是内容'}}}</script>// component.vue<p>我的组件 {{msg}}-{{content}}</p><script>export default{name: 'child',props: ["msg","content"]}</script>

    子组件再传值回父组件,在函数中使用 this.$emit()

    // component.vue<script>export default{name: 'component',data() {return {param:"需要传回的参数",data: "参数2"}},props: ["msg","content"],methods: {// 假设在子组件选择完毕后点击将 param 传回chooseOk(){// ...中间的逻辑处理省略this.$emit('changeData',this.param,this.data);}}}</script>

    在 page.vue 的 < children > 标签中加入 @changeData,即可在点击子组件之后在父组件出接收到传过来的参数

    <children :msg="msg" :content="content" @changeData="dataChange"></children><script>import children from "./component";export default {name: "page",components: {children},methods: {dataChange(param,data){console.log(param + ',' + data);}}}</script>

    最后在附加一点,在父组件中该如何调用子组件中的函数呢,这里需要用到 ref 属性,添加在我们的 < children > 标签中

    // page.vue<div @click="ifClick">click</div><children ref="child" :msg="msg" :content="content" @changeData="dataChange"></children>// 重复部分省略 ...methods: {ifClick(){this.$refs.child.isClick();}}// component.vuemethods: {isClick(){console.log("父组件点击了");}}

    以上就是关于“Vue的URL转跳与参数传递方法是什么”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网行业资讯频道。

    免责声明:

    ① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

    ② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

    Vue的URL转跳与参数传递方法是什么

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档

    猜你喜欢

    Vue的URL转跳与参数传递方法是什么

    这篇“Vue的URL转跳与参数传递方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Vue的URL转跳与参数传递方法是
    2023-07-05

    关于Vue的URL转跳与参数传递方式

    这篇文章主要介绍了关于Vue的URL转跳与参数传递方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-10

    django url传递参数的方法是什么

    Django中向URL传递参数的方法主要有两种:使用路径参数和使用查询参数。1. 路径参数:路径参数是通过在URL中直接添加参数来传递的。在URL的路径中使用尖括号``来定义参数,并在views中的相应函数中接收参数。例如:```# url
    2023-10-09

    php通过url传递参数的方法是什么

    PHP通过URL传递参数的方法有两种:1. 使用GET方法传递参数在URL后面添加参数,格式为`?参数名1=值1&参数名2=值2&...`,例如:```http://example.com/page.php?name=John&age=25
    2023-08-09

    vue跳转页签传参并查询参数的方法是什么

    本篇内容主要讲解“vue跳转页签传参并查询参数的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue跳转页签传参并查询参数的方法是什么”吧!场景需求是要求通过点击用户ID或者昵称 跳转
    2023-07-06

    vue-router参数传递的方式是什么

    本篇内容介绍了“vue-router参数传递的方式是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!vue-router传递参数分为两大类
    2023-07-04

    iframe参数传递的方法是什么

    在HTML中,可以使用iframe标签来嵌套其他网页。要传递参数给嵌套的网页,可以使用以下方法:1. URL查询字符串:可以将参数作为URL的查询字符串附加在iframe的src属性中。例如:```html```在嵌套的网页中,可以使用Ja
    2023-09-20

    Vue中mapMutations传递参数方式是什么

    本篇内容主要讲解“Vue中mapMutations传递参数方式是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Vue中mapMutations传递参数方式是什么”吧!通过子组件定义的方法传递
    2023-06-30

    java string参数传递的方法是什么

    在Java中,字符串参数传递的方法是通过将字符串作为参数传递给方法。这可以通过以下几种方式实现:传递字符串字面值:可以直接将字符串字面值作为参数传递给方法。例如:public void printString(String str) {S
    2023-10-26

    java多参数传递的方法是什么

    在Java中,可以使用以下几种方式来实现多参数的传递:使用数组:可以将多个参数封装成一个数组,然后将数组作为方法的参数进行传递。例如:public void myMethod(int[] params) {// 使用params数组中的参数
    java多参数传递的方法是什么
    2024-02-29

    Android Activity中使用Intent实现页面跳转与参数传递的方法

    本文实例讲述了Android Activity中使用Intent实现页面跳转与参数传递的方法。分享给大家供大家参考,具体如下: 新建一个FirstAvtivity.javapackage com.zhuguangwei; import an
    2022-06-06

    delphi线程传递参数的方法是什么

    在Delphi中,可以通过以下方法传递参数给线程:使用构造函数:可以在线程的构造函数中添加参数,然后在创建线程时传递参数。例如:typeTMyThread = class(TThread)privateFParam: Integer;pub
    2023-10-27

    Postman传递对象参数的方法是什么

    这篇文章主要介绍“Postman传递对象参数的方法是什么”,在日常操作中,相信很多人在Postman传递对象参数的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Postman传递对象参数的方法是什么
    2023-06-26

    qt多线程传递参数的方法是什么

    在Qt中,可以使用信号和槽机制来在多线程之间传递参数。下面是一种常见的方法:1. 定义一个包含参数的信号和槽函数:```cppclass Worker : public QObject{Q_OBJECTpublic:Worker() {}p
    2023-09-27

    python多线程传递参数的方法是什么

    在Python中,可以使用threading.Thread类来创建多线程,并通过构造函数的args参数传递参数给线程函数。以下是一个示例代码:import threadingdef my_thread_func(arg1, arg2):
    python多线程传递参数的方法是什么
    2024-02-29

    C语言实参与形参的传递方式是什么

    在C语言中,实参与形参的传递方式有两种:值传递和地址传递。值传递:当调用函数时,将实参的值复制一份传递给形参,函数内部对形参的操作不会影响到实参的值。这种传递方式适用于基本数据类型(如int、char等)以及结构体、数组等较小的数据类型。地
    C语言实参与形参的传递方式是什么
    2024-03-11

    python不同类间参数传递的方法是什么

    在Python中,不同类间的参数传递可以通过以下几种方法实现:1. 构造函数:通过在一个类的构造函数中传递参数,然后在另一个类的对象创建时将参数传递给构造函数。例如:```pythonclass ClassA:def __init__(se
    2023-09-27

    PHP实战教程:掌握POST参数传递并跳转页面的方法

    在PHP开发中,经常会遇到需要通过表单提交数据,然后跳转到另一个页面进行处理的情况。这时就需要掌握如何使用POST参数传递数据并跳转页面的方法。接下来,我们将通过具体的代码示例来演示这个过程。首先,我们需要创建一个包含表单的页面,用户可以
    PHP实战教程:掌握POST参数传递并跳转页面的方法
    2024-03-07

    Vue3.0路由跳转携带参数方法是什么

    这篇“Vue3.0路由跳转携带参数方法是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Vue3.0路由跳转携带参数方法是
    2023-07-06

    Vue路由传递参数与重定向的使用方法总结

    路由的本质就是一种对应关系,比如说我们在url地址中输入我们要访问的url地址之后,浏览器要去请求这个url地址对应的资源,下面这篇文章主要给大家介绍了关于Vue路由传递参数与重定向的使用方法,需要的朋友可以参考下
    2022-11-13

    编程热搜

    • Python 学习之路 - Python
      一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
      Python 学习之路 - Python
    • chatgpt的中文全称是什么
      chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
      chatgpt的中文全称是什么
    • C/C++中extern函数使用详解
    • C/C++可变参数的使用
      可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
      C/C++可变参数的使用
    • css样式文件该放在哪里
    • php中数组下标必须是连续的吗
    • Python 3 教程
      Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
      Python 3 教程
    • Python pip包管理
      一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
      Python pip包管理
    • ubuntu如何重新编译内核
    • 改善Java代码之慎用java动态编译

    目录