重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这期内容当中小编将会给大家带来有关Vue中如何使用header组件,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
创新互联建站长期为上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为南岸企业提供专业的成都网站制作、成都网站设计、外贸营销网站建设,南岸网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。
一、 header 组件开发 之数据的传递
1. App.vue 引入组件
import header from './components/header/header'
2. App.vue 中注册组件
export default { components:{ v-header:header } }
3. 使用组件
解释::sell="sellerObj",这里就像一个函数传参一样把sell当成形参,sellerObj就是实参,那么父组件实参是怎么传给子组件的,通过什么传
4. 父组件向子组件传递数据
在父组件中需要将sellerObj作为数据导出,子组件通过props从父组件中获得数据,且要指定数据类型
export default { props:{ // 子组件获取 父组件 数据 sell:{ type:Object // 传递的类型 } } }
小结:
子组件在props中创建一个属性,用以接收父组件传过来的值
父组件中注册子组件
在子组件标签中添加子组件props中创建的属性
把需要传给子组件的值赋给该属性
5. 调用数据
{{sell.name}}{{sell.description + '/' + sell.deliveryTime + '分钟送达'}}
细节问题:
support 绑定数据时 加 v-if ='sell.supports'
理由 : 在我们通过axios获取数据前在父组件中创建了一个空的对象sellerObj 先传给子组件,开始 没有数据传送过去就会报错 underfined,加上 v-if ,接受不到数据就不会解析,也就不会报错。
二、 header 组件弹出层(详情)
1.弹出遮罩层
(1) 设置一个状态,判断该状态控制显示隐藏
data (){ return { detailShow:false } }
(2) 绑定点击事件,通过methods 方法改变 状态,控制显隐效果
methods:{ showDetails () { this.detailShow=true }, hideDetail () { this.detailShow=false } }
2. 星级评分
(1) 绑定class 控制星级大小的类型
// 利用 computed 属性
computed: { starSizeType() { // 返回 星级的大小类型 48/36/24 return 'star-' + this.size; } }
(2) 遍历星星的数量
复制代码 代码如下:
(3) 定义常量 控制 每个星的状态
// 类名用变量存起来 const LENGTH = 5 // 星星长度 const CLS_ON = 'on' // 全星 const CLS_HALF = 'half' // 半星 const CLS_OFF = 'off'// 空星
(4) 通过计算 判断每个span 的类型
itemClasses () { // 返回一个数组为每个span 的类名 (遍历) let spanClassList=[]; // 利用 实参评分来判断 有几颗全星,半星,空星 let scores=( Math.floor(this.score * 2) ) / 2 let intNum= Math.floor(scores); // 全星个数 let HashalfNum= scores % 1 !== 0 // 半星 for(var i=0;i(5) 通过 动态绑定class 来 给span 加类名
上述就是小编为大家分享的Vue中如何使用header组件了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注创新互联行业资讯频道。
网页名称:Vue中如何使用header组件
新闻来源:http://cqcxhl.cn/article/gsegdi.html