我是靠谱客的博主 难过红酒,最近开发中收集的这篇文章主要介绍vue 尚品汇实战项目(一),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1、项目开发流程:

1.书写静态页面

2.拆分组件

3.获取服务器的数据动态展示

4.完成相应的动态业务逻辑

2.路由组件与非路由组件的区别?

1:路由组件一般都放在pages/views文件夹,非路由组件一般都放在componets

2:路由组件一般都需要在router文件夹中进行注册(使用的就是组件的名字),非路由组件使用的时候一般都是以标签的形式

在main.js中注册路由信息,书写router的时候,组件的身上都拥有$route $router属性

$route:一般获取路径信息【路径、query、params等等】

$router:一般进行编程时导航路由跳转【push|replace】两种区别能不能记住历史记录

3、路由传递参数的三种写法:字符串形式、模板字符串、对象

this.$router.push("/search/" + this.keyword + "?k=" + this.keyword.toUpperCase());

this.$router.push(`/search/${this.keyword}?k=${this.keyword.toUpperCase()}`);

this.$router.push({name:"search",params:{keyword:this.keyword},query:{k:this.keyword.toUpperCase()}});

3、路由的params参数和query参数的传递

params参数:路由需要占位,在路径中占位:keyword

{
	path:'/search/:keyword',
}

query参数:路由不需要占位

<!-- 跳转并携带query参数,to的对象写法 -->
<router-link 
	:to="{
		path:'/home/message/detail',
		query:{
		   id:666,
           title:'你好'
		}
	}"
>跳转</router-link>

1:路由传递参数(对象写法)path是否可以结合params参数一起使用?

路由跳转传参的时候,对象的写法可以是name,path的形式,但是path不能结合parmas这样写,会导致跳转的时候路由的路径只带params参数,原来预想跳转的组件路径失效。

2:如何指定params参数可传可不传?

配置路由时,路径进行占位了,但是路由跳转的时候就不传递,路径出现问题。

解决办法:

占位符后面加个问号

{
	path:'/search/:keyword?',
}

3:params参数可以传递也可以不传递,但是如果传递是空串,如何解决?

解决方法:使用undifined

this.$router.push({name:"search",params:{keyword:''||undefined},query:{k:this.keyword.toUpperCase()}});

4: 路由组件能不能传递props数据?

能传递,且有三种写法

{
	name:'xiangqing',
	path:'detail/:id',
	component:Detail,

	//第一种写法:props值为对象,该对象中所有的key-value的组合最终都会通过props传给Detail组件
	// props:{a:900}

	//第二种写法:props值为布尔值,布尔值为true,则把路由收到的所有params参数通过props传给Detail组件
	// props:true
	
	//第三种写法:props值为函数,该函数返回的对象中每一组key-value都会通过props传给Detail组件
	props(route){
		return {
			id:route.query.id,
			title:route.query.title
		}
	}
}

最后

以上就是难过红酒为你收集整理的vue 尚品汇实战项目(一)的全部内容,希望文章能够帮你解决vue 尚品汇实战项目(一)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(60)

评论列表共有 0 条评论

立即
投稿
返回
顶部