解决Vue router-link绑定事件不生效的问题

 更新时间:2020年07月22日 14:30:30   作者:shizhenweiszw  
这篇文章主要介绍了解决Vue router-link绑定事件不生效的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

解决方法:加native

<router-link to="/date" @click.native="nav_click">最新</router-link>
 
methods: {
 nav_click: function() {
  console.log(1)
 }
}  

解释:

1: 因为它是自定义标签,根本就没有事件和方法,所以不触发,加个native 就是告诉vue 这个标签现在有主了 它是H5标签 可以加事件了。

2:父组件要想在子组件监听自己的click事件就得加native,router-link是标签啊。哪里有父组件????

router-link 其实就是一个封装好的 .vue 组件,所以需要 加.native修饰符才能绑定事件

补充知识:Vue router-link使用的坑

####最近上手VUE,整体配置全部使用默认的配置,但是Route-link就是不跳转

这是我src的项目目录

这是router/index.js的代码,虽然和网上搜的其他的代码截图,整体没毛病,声明并导出了Vue-router的实例

import Vue from 'vue'
 import Router from 'vue-router'
 import Main from '@/components/Main'
 import Attend from '@/components/Attend'
 
 Vue.use(Router)
 export default new Router({
 mode: 'history',
 routes: [
  {
   path: '/Main',
   name: 'Main',
   component: Main  
  },
  {
   path: '/Attend',
   name: 'Attend',
   component: Attend  
  },
  {
  path:'/',
  redirect:"Main"
  }
 ]
 })

这是main.js的代码,需要注意的是,import router这里不能修改成其他名字

 import Vue from 'vue'
 import App from './App'
 import router from './router'
 
 Vue.config.productionTip = false;//阻止Vue在正式运行时发出生产提示
 
 /* eslint-disable no-new */
 Vue.component
 new Vue({
  el: '#app',
  router,
  components: { App },
  template: '<App/>',//在页面引用
 })

到了关键点了测试使用router-link

 <template>
  <div id="app">
   <AppHeader back="false" :title="title" />
   <div class="content">
    <router-view />
   </div>
   <ul>
     <li><router-link :to="{name:'Main'}">/</router-link></li>
     <li><router-link :to="{path:'/Attend'}">/foo</router-link></li>
     <li><router-link to="/">/bar</router-link></li>
   </ul>
  </div>
 </template>

找了好久才发现:to后面的用法

我一直出错的地方是在main.js中引入的Main和Attend包括了组件的全路径,当时跟着一个教程做的,然后我再声明path时直接写的是 path:‘/',我以为会直接找到,后来调试了好久才回过神来不对,需要改成path:'/Main',即对应的.vue才可以,小问题折腾了好久,记下来

以上这篇解决Vue router-link绑定事件不生效的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Vue中跨域及打包部署到nginx跨域设置方法

    Vue中跨域及打包部署到nginx跨域设置方法

    这篇文章主要介绍了Vue中跨域以及打包部署到nginx跨域设置方法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • vue的指令和插值问题汇总

    vue的指令和插值问题汇总

    Vue 是一套用于构建用户界面的渐进式框架,Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合,这篇文章主要介绍了vue的指令和插值总结,需要的朋友可以参考下
    2022-10-10
  • 详解vue-router导航守卫

    详解vue-router导航守卫

    今天小编就为大家分享一篇关于详解vue-router导航守卫,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • 在Vue2中v-model和.sync区别解析

    在Vue2中v-model和.sync区别解析

    在vue2中提供了.sync修饰符,但是在vue3中不再支持.sync,取而代之的是v-model,本文给大家介绍在Vue2中v-model和.sync区别,感兴趣的朋友一起看看吧
    2023-10-10
  • vue实现input输入模糊查询的三种方式

    vue实现input输入模糊查询的三种方式

    本文主要介绍了vue实现input输入模糊查询的三种方式吗,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • Vue3学习之语法糖、箭头函数、函数声明详解

    Vue3学习之语法糖、箭头函数、函数声明详解

    在Vue3中箭头函数被广泛支持,尤其是在组合式API的上下文中,这篇文章主要给大家介绍了关于Vue3学习之语法糖、箭头函数、函数声明的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-08-08
  • Vue 实现树形视图数据功能

    Vue 实现树形视图数据功能

    这篇文章主要介绍了Vue 实现树形视图数据功能,利用简单的树形视图实现的,在实现过程中熟悉了组件的递归使用,感兴趣的朋友跟随脚本之家小编一起学习吧
    2018-05-05
  • Vue实现模糊查询filter()实例详解

    Vue实现模糊查询filter()实例详解

    因为近日在学习并使用VUE,客户有一个要求,要输入框可模糊查询并带有下拉提示的应用,数据从接口取,下面这篇文章主要给大家介绍了关于Vue实现模糊查询filter()的相关资料,需要的朋友可以参考下
    2023-04-04
  • vue swipe自定义组件实现轮播效果

    vue swipe自定义组件实现轮播效果

    这篇文章主要为大家详细介绍了vue swipe自定义组件实现轮播效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-07-07
  • Vue.js第一天学习笔记(数据的双向绑定、常用指令)

    Vue.js第一天学习笔记(数据的双向绑定、常用指令)

    这篇文章主要为大家分享了Vue.js第一天的学习笔记,包括数据的双向绑定、常用指令学习,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12

最新评论