问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

vue-router组件里面点击一个按钮跳转到一个新的组件该怎么实现

发布网友 发布时间:2022-04-07 05:00

我来回答

2个回答

热心网友 时间:2022-04-07 06:30

直接修改地址栏中的路由地址即可:

<!doctype html>

<html>

<head>

<meta charset="UTF-8">

<title></title>

<script src="js/vue.js"></script>

<!-- 引入文件 -->

<script src="js/vue-router.js"></script>

</head>

<body>

<div id="container">

<p>{{msg}}</p>

<!--通过router-view指定盛放组件的容器 -->

<router-view></router-view>

</div>

<script>

var testLogin = Vue.component("login",{

template:`

<div>

<h1>这是我的登录页面</h1>

</div>

`

})

var testRegister = Vue.component("register",{

template:`

<div>

<h1>这是我的注册页面</h1>

</div>

`

})

//配置路由词典

//对象数组

const  myRoutes =[

//当路由地址:地址栏中的那个路径是myLogin访问组件

//组件是作为标签来用的所以不能直接在component后面使用

//要用返回值

//path:''指定地址栏为空:默认为Login页面

{path:'',component:testLogin},

{path:'/myLogin',component:testLogin},

{path:'/myRegister',component:testRegister}

]

const myRouter = new VueRouter({

//myRoutes可以直接用上面的数组替换

routes:myRoutes

})

new Vue({

router:myRouter,

//或者:

/*

router:new VueRouter({

routes:[

{path:'/myLogin',component:testLogin},

{path:'/myRegister',component:testRegister}

]

})

*/

el:"#container",

data:{

msg:"Hello VueJs"

}

})

</script>

</body>

</html>

一、通过router-link实现跳转

<router-link to="/myRegister">注册</router-link>

<!doctype html>

<html>

<head>

<meta charset="UTF-8">

<title></title>

<script src="js/vue.js"></script>

<!-- 引入文件 -->

<script src="js/vue-router.js"></script>

</head>

<body>

<div id="container">

<p>{{msg}}</p>

<!--通过router-view指定盛放组件的容器 -->

<router-view></router-view>

</div>

<script>

var testLogin = Vue.component("login",{

template:`

<div>

<h1>这是我的登录页面</h1>

<router-link to="/myRegister">注册</router-link>

</div>

`

/*to后面是路由地址*/

})

var testRegister = Vue.component("register",{

template:`

<div>

<h1>这是我的注册页面</h1>

</div>

`

})

//配置路由词典

const  myRoutes =[

{path:'',component:testLogin},

{path:'/myLogin',component:testLogin},

{path:'/myRegister',component:testRegister}

]

const myRouter = new VueRouter({

routes:myRoutes

})

new Vue({

router:myRouter,

el:"#container",

data:{

msg:"Hello VueJs"

}

})

</script>

</body>

</html>

二、通过js的编程的方式

jumpToLogin: function () {

this.$router.push('/myLogin');

}

<!doctype html>

<html>

<head>

<meta charset="UTF-8">

<title></title>

<script src="js/vue.js"></script>

<!-- 引入文件 -->

<script src="js/vue-router.js"></script>

</head>

<body>

<div id="container">

<p>{{msg}}</p>

<!--通过router-view指定盛放组件的容器 -->

<router-view></router-view>

</div>

<script>

var testLogin = Vue.component("login",{

template:`

<div>

<h1>这是我的登录页面</h1>

<router-link to="/myRegister">注册</router-link>

</div>

`

/*to后面是路由地址*/

})

var testRegister = Vue.component("register",{

methods:{

jumpToLogin:function(){

this.$router.push('/myLogin');

}

},

template:`

<div>

<h1>这是我的注册页面</h1>

<button @click="jumpToLogin">注册完成,去登录</button>

</div>

`

})

//配置路由词典

const  myRoutes =[

{path:'',component:testLogin},

{path:'/myLogin',component:testLogin},

{path:'/myRegister',component:testRegister}

]

const myRouter = new VueRouter({

routes:myRoutes

})

new Vue({

router:myRouter,

el:"#container",

data:{

msg:"Hello VueJs"

}

})

</script>

</body>

</html>

热心网友 时间:2022-04-07 07:48

首先在app.vue里面有这么一段<router-view class="router-view" ></router-view>
然后你所点击的按钮其实是这个东西<router-link :to=""></router-link>,这个其实就是个封装完的a标签
你在router里面配置完了相关路由之后就能在点击这个按钮的时候将router-view标签里面的组件替换掉了
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
合肥学区房的投资价值 合肥学区房楼盘有哪些 贝特朗·德拉诺埃个人介绍 什么样的人能获诺奖 我帮妹妹的孩子起名儿 索尼VPCSD18EC/L基本参数 想买款华硕的本本 价格在4500左右 一般只玩《传奇》《实况足球12... 索尼笔记本 型号 VPCEA45FG 屏幕尺寸是多少?? 索尼vpcca26ec自带的应用软件有哪些啊?比如说vaio care等等啊?求帮助... PMB VAIO Edition plug-in可以删掉么? 信用卡超出没有还钱,利息怎么计算的 信用卡最低还款利息怎么算的? 请问信用卡没有还最低还款,利息怎么样计。 交行信用卡最低还款额没还,那之后几天它的利息怎么算? 北交所股票退市整理期的交易期限是多久? 柳树的长辫子在春风中 一个电脑插2个独立显卡会怎样? 53度贵州茅台价格是多少? 综合验光仪里雾视的目的是什么? 茅台酒2014年53度多少钱一瓶 全自动电脑验光仪与综合检验仪的区别 一瓶98年的53度贵州茅台酒现在能值多少钱啊? 79年茅台酒现在能卖多少钱 综合验光仪跟视力表验光所得结果会有误差么 哪儿个跟准确些?? 医院里验光和在眼镜店里验光结果差别很大吗?电脑验光仪验光和综合验光仪验光结果差别很大吗? 2003飞天茅台卖多少钱 vue-router组件里面点击一个按钮跳转到一个新的组件该怎么实现? 2003年飞天茅台多少钱一瓶 我有一瓶,1978年的茅台酒值多少钱?有知道的帮忙告诉下现在的价格。谢谢了 1977年的茅台酒价格多少钱? 梦见大鲨鱼咬死两条小鱼有血? 求解梦:梦见两条鱼被凶恶的鱼追杀。。 梦见鲨鱼把大白鱼咬死了 梦见大鲨鱼扎到我脚流好多血,鱼也死了 如果梦到被鱼咬了,是什么意思呢? 梦到家里房子下面有个很大的水塘,里面有很多的鱼,什么鱼都有,还有鲨鱼我把鲨鱼打死了流血了,梦好不好 梦见很多鲨鱼,水涨潮,鲨鱼游出来,好吓人,还有很多人被鲨鱼咬死了? 英雄联盟多少级可以加好友 LOL美服是不是3级才可以加好友? 英雄联盟多少级才可以加好友 lol里面1级能加入别人的游戏吗? lol多少级可以邀请别人一起匹配? 英雄联盟几级可以组队(打人机也行) 英雄联盟最高多少级,低级和最高级可以组队吗 英雄联盟30级怎么加不上10级的好友 英雄联盟几级可以组队匹配啊,, lol几级可以打匹配 英雄联盟多少级可以送好友英雄 英雄联盟怎么添加好友对方才1级 很急啊 英雄联盟送好友英雄 好友等级要多少?要多少天的好友才可以?