Vue组件通信如何通过 Emit 回传评分星星组件当前选中的星级
里的评分组件,常见做法就是用把用户点选的星级回传给父组件:子组件先通过渲染出颗星,点击某一颗时触发事件,并把作为评分值传出去;父组件再通过监听接收这个值,同时也可以支持的双向绑定写法;如果是,对应。
Vue 里的评分组件,常见做法就是用 $emit 把用户点选的星级回传给父组件:子组件先通过 v-for 渲染出 5 颗星,点击某一颗时触发 rate 事件,并把 i+1 作为评分值传出去;父组件再通过监听 @rate 接收这个值,同时也可以支持 v-model 的双向绑定写法;如果是 Vue 3,对应的实现方式则是 modelValue/update:modelValue。

在 Vue 中,评分星星组件(StarRating)通常需要将用户点击的星级通过 $emit 通知父组件。核心思路是:子组件内部用 `v-for` 渲染星星,绑定点击事件,触发自定义事件并传参;父组件监听该事件,接收当前选中的星级值。
具体来说,子组件:StarRating.vue —— 渲染星星并 emit 选中值
组件通过 props 接收当前评分,这个值可以不传,默认按 0 处理;星星部分则借助 v-for 渲染出 5 颗。用户点到哪一颗星,就用 $emit('update:rating', index),或者更通用一点的 $emit('rate', index),把对应的星级(例如 1~5)回传出去。
- 推荐使用语义化事件名,如
rate或change,避免与 Vue 内置机制冲突 - 注意索引处理:
v-for="(star, i) in 5"中i是 0 起始,所以传i + 1 - 可加高亮逻辑:鼠标悬停或点击时,前面所有星星(包括当前)显示为实心星
父组件:监听事件并接收星级
用 @rate="handleRate" 或 v-on:rate="handleRate" 监听子组件发出的事件,在方法中接收参数(即选中的星级),用于更新数据、提交表单或触发其他逻辑。
- 可以直接赋值:
this.userRating = rating - 也可配合
v-model实现双向绑定(需子组件同时支持modelValueprop 和update:modelValue事件)
具体来说,进阶:支持 v-model 双向绑定(Vue 3 推荐写法)
在子组件中,用 props.modelValue 替代自定义 prop,点击时调用 $emit('update:modelValue', i + 1);父组件直接写 v-model="userRating" 即可同步。
- Vue 2 中需兼容写法:
props: { value: Number }+$emit('input', ...) - Vue 3 中统一为
modelValue和update:modelValue,更清晰且与 Composition API 一致
不复杂但容易忽略的是:确保子组件内点击事件没有被冒泡干扰,必要时加 @click.stop;另外,别忘了给星星元素设置合适的 cursor 和过渡效果,提升交互体验。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
Bootstrap响应式步骤进度指示器:状态变化与图标展示实现
文章讲解用Bootstrap构建响应式步骤进度指示器,采用语义化导航结构、aria-current状态、CSS伪元素图标和动态连线,并限制未激活步骤的键盘访问。不同屏幕下布局会自动调整,进度切换还需绑定表单校验,确保界面状态与真实数据始终一致。
Vue3路由管理如何结合 Vue Router 4 实现路由懒加载和守卫
在里,路由懒加载和路由守卫最好配合着用:前者借助动态按需加载组件,能把首屏压力降下来;后者则借助守卫机制,比如,在页面跳转前先做拦截和校验,用来完成权限控制。两者一起上,性能和安全性才能与此同时兼顾。
Vue基础语法如何实现带分页功能的表格数据展示组件
借助的基础语法,就能把一个分页表格做得既可控又方便排查问题:先定义、、、这些响应式状态;再通过计算属性配合对进行动态截取,生成当前页要展示的数据;页码和每页条数用完成绑定,与负责在变更时触发数据更新。
Vue组件通信如何通过 Emit 回传评分星星组件当前选中的星级
里的评分组件,常见做法就是用把用户点选的星级回传给父组件:子组件先通过渲染出颗星,点击某一颗时触发事件,并把作为评分值传出去;父组件再通过监听接收这个值,同时也可以支持的双向绑定写法;如果是,对应。
Bootstrap侧边栏菜单如何在移动端通过手势滑动显示和隐藏
移动端侧边栏滑动需原生监听计算位移,达阈值时调用;仅在移动端启用,绑定到等有高度的容器,防滚动,并留意视口变化干扰。。。移动端侧边栏滑动触发逻辑怎么写。本身不提供手势滑动()控制侧边栏显隐的功能,组件只响。
- 热门数据榜
相关攻略
2026-08-10 21:09
2026-08-10 20:38
2026-08-10 20:38
2026-08-10 20:37
2026-08-10 20:37
2026-08-10 18:33
2026-08-10 18:32
2026-08-10 18:32
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程

