html代码
备注:父组件food.vue传入的数据
1 | <ratingselect @select="selectRating" @toggle="toggleContent" :selectType="selectType" |
- 方法有:@select=”selectRating” @toggle=”toggleContent”,通过将子组件的方法和父组件的方法进行关联,这样就能够实现跨组件通讯和操作
- 属性有::selectType=”selectType”:onlyContent=”onlyContent” :desc=”desc”:ratings=”food.ratings”,这是通过pros传入到子组件的属性,将父组件的数据传到子组件里面,也带有一种通过父组件来初始化子组件属性的意思.
ratingselect的html代码
1 | <div class="ratingselect"> |
- @click=”select(2,$event)” select方法传入类型和事件,然后在methods里面调用父组件的方法,实现子组件控制父组件的目的
- :class=”{‘active’:selectType ===2}” 根据类型来确定显示的class,实现不同类型显示不同样式的目的
- positives.length 使用计算属性自动计算类型数组的长度,用来显示不同类型的数量
- @click=”toggleContent” :class=”{‘on’:onlyContent}”
- toggleContent控制是否展示有内容的rate,也是在methods里面调用父组件的方法,实现子组件控制父组件的目的
- 绑定on这个class来控制该按钮的样式
js代码
1 | const POSITIVE = 0; //设置显示常量 |
css代码
1 | @import "../../common/stylus/mixin.styl" |