解决使用vue.js路由后失效的问题


Posted in Javascript onMarch 17, 2018

新学了vue.js中的路由 在之前写的vue的demo上加上了简单的路由例子(来自vue-router 2),但是加上点击后只有地址栏变化,内容并不变.且之前用jquery写的一些效果也失效了.最后找到原因是因为同一个id被启动了两次(第一次是之前使用vue组件时启动的,另外一个是路由时启动的)

附上部分代码

<!DOCTYPE html>
<html>
<head>
 <meta charset="UTF-8">
 <!-- 引入样式 -->
 <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-default/index.css" rel="external nofollow" >
</head>
<style>
body {
 margin: 0;
 padding: 0;
}
.logo {
 width: 166.65px;
 height: 60px;
 position: absolute;
}
.el-menu-demo {
 margin-left: 166.65px;
}
.tac {
 width: 500px;
} 
.bar2,.bar3{
 display: none;
}
</style>
<body>
<div id="top-menu">
 <div class="logo">
 <img src="baidu.gif" alt="">
 </div>
 <el-menu :default-active="activeIndex" class="el-menu-demo" mode="horizontal" @select="handleSelect">
 <el-menu-item index="1" class="nav1">基本资料</el-menu-item>
 <el-menu-item index="2" class="nav2">培养信息</el-menu-item>
 <el-menu-item index="3" class="nav3">考核相关</el-menu-item>
 <el-menu-item index="4" class="nav4">清算</el-menu-item>
 </el-menu>
</div>
<div id="left-menu">
<el-row class="tac">
 <!-- 基本资料-->
 <el-col :span="8" class="bar1">
 <el-menu mode="vertical" default-active="1" class="el-menu-vertical-demo" @select="handleSelect" theme="dark">
 <el-menu-item-group title="个人资料">
 <!-- 路由链接添加处 -->
 <router-link to = "/information"><el-menu-item index="1"><i class="el-icon-message"></i>基本信息</el-menu-item></router-link>
 <el-menu-item index="2"><i class="el-icon-message"></i>修改密码</el-menu-item>
 </el-menu-item-group>
 <el-menu-item-group title="会员资料">
 <router-link to = "/list"><el-menu-item index="3"><i class="el-icon-message"></i>会员信息</el-menu-item></router-link>
 </el-menu-item-group>
 <el-menu-item-group title="小组资料">
 <el-menu-item index="4"><i class="el-icon-message"></i>小组信息</el-menu-item>
 </el-menu-item-group>
 </el-menu>
 </el-col>
 </el-row>
<!-- 路由内容显示 -->
<div class = "content">
 <router-view></router-view>
</div>
</div>
</body>
 <!-- 先引入 Vue -->
 <script src="https://unpkg.com/vue/dist/vue.js"></script>
 <script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>
 <!-- 引入组件库 -->
 <script src="https://unpkg.com/element-ui/lib/index.js"></script>
 <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript">
 $(document).ready(function(){
 $(".nav1").click(function(){
 $(".bar1").show().siblings().hide(); 
 })
 $(".nav2").click(function(){
 $(".bar2").show().siblings().hide(); 
 })
 $(".nav3").click(function(){
 $(".bar3").show().siblings().hide();
 })
 })
 </script>
 <script type="text/javascript">
//vue组件部分
 var Main = {
 data() {
 return {
  activeIndex: '1'
 };
 },
 methods: {
 handleSelect(key, keyPath) {
  /*console.log(key, keyPath);*/
 }
 }
 }
//vue路由部分
 const Information = {template:'<div>foo</div>'}
 const List = {template:'<div>list</div>'}
 const routes = [
 {path:'/information',component:Information},
 {path:'/list',component:List}]
 const router = new VueRouter({
 routes
 })
 const app = new Vue({
 router
 }).$mount('#left-menu') //路由 启动应用
 var Ctor = Vue.extend(Main)
 new Ctor().$mount('#top-menu')
 //主要就是下面这条语句多余 这是写组件时启动应用所用的语句
 //new Ctor().$mount('#left-menu')
 </script>
</html>

以上这篇解决使用vue.js路由后失效的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Extjs Ajax 乱码问题解决方案
Apr 15 Javascript
Ext grid 添加右击菜单
Nov 26 Javascript
基于JQuery的Pager分页器实现代码
Jul 17 Javascript
优化Node.js Web应用运行速度的10个技巧
Sep 03 Javascript
javascript模拟命名空间
Apr 17 Javascript
Jquery中$.post和$.ajax的用法小结
Apr 28 Javascript
页面缩放兼容性处理方法(zoom,Firefox火狐浏览器)
Aug 29 Javascript
VueJS事件处理器v-on的使用方法
Sep 27 Javascript
js统计页面上每个标签的数量实例代码
May 29 Javascript
详解easyui基于 layui.laydate日期扩展组件
Jul 18 Javascript
看看“疫苗查询”小程序有温度的代码
Jul 31 Javascript
微信小程序canvas开发水果老虎机的思路详解
Feb 07 Javascript
vue实现的上传图片到数据库并显示到页面功能示例
Mar 17 #Javascript
Vue的路由动态重定向和导航守卫实例
Mar 17 #Javascript
JS实现为动态创建的元素添加事件操作示例
Mar 17 #Javascript
对vue里函数的调用顺序介绍
Mar 17 #Javascript
基于vue2.0动态组件及render详解
Mar 17 #Javascript
Vue实现动态创建和删除数据的方法
Mar 17 #Javascript
JS实现将链接生成二维码并转为图片的方法
Mar 17 #Javascript
You might like
php中的filesystem文件系统函数介绍及使用示例
2014/02/13 PHP
PHP基于MySQLI函数封装的数据库连接工具类【定义与用法】
2017/08/11 PHP
在thinkphp5.0路径中实现去除index.php的方式
2019/10/16 PHP
PHP设计模式(六)桥连模式Bridge实例详解【结构型】
2020/05/02 PHP
Javascript学习笔记2 函数
2010/01/11 Javascript
jQuery实现Email邮箱地址自动补全功能代码
2015/11/03 Javascript
详解JS面向对象编程
2016/01/24 Javascript
javascript中对Date类型的常用操作小结
2016/05/19 Javascript
js给table赋值的实例代码
2016/10/13 Javascript
javascript实现一个网页加载进度loading
2017/01/04 Javascript
node.js + socket.io 实现点对点随机匹配聊天
2017/06/30 Javascript
在小程序中使用Echart图表的示例代码
2018/08/02 Javascript
Webpack 4.x搭建react开发环境的方法步骤
2018/08/15 Javascript
Node.js控制台彩色输出的方法与原理实例详解
2019/12/01 Javascript
vue 实现在同一界面实现组件的动态添加和删除功能
2020/06/16 Javascript
[01:44]Ti10举办地公布
2019/08/25 DOTA
[00:29]2019完美世界全国高校联赛(秋季赛)总决赛海口落幕
2019/12/10 DOTA
Python numpy 提取矩阵的某一行或某一列的实例
2018/04/03 Python
python中subprocess批量执行linux命令
2018/04/27 Python
Python中栈、队列与优先级队列的实现方法
2019/06/30 Python
Django框架之DRF 基于mixins来封装的视图详解
2019/07/23 Python
Django REST Framework之频率限制的使用
2019/09/29 Python
Python hashlib模块加密过程解析
2019/11/05 Python
Python中内建模块collections如何使用
2020/05/27 Python
python使用ctypes库调用DLL动态链接库
2020/10/22 Python
python实现企业微信定时发送文本消息的实例代码
2020/11/25 Python
英国最大的独立玩具专卖店:The Entertainer
2019/09/06 全球购物
学术诚信承诺书
2014/05/26 职场文书
公司副总经理岗位职责
2014/10/01 职场文书
教师节老师寄语
2015/05/28 职场文书
获奖感言一句话
2015/07/31 职场文书
2015年中秋寄语
2015/07/31 职场文书
导游词之山东八大关
2019/12/18 职场文书
MySQL连接控制插件介绍
2021/09/25 MySQL
Vue实现跑马灯样式文字横向滚动
2021/11/23 Vue.js
python创建字典及相关管理操作
2022/04/13 Python