Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >vue中特殊的prop和事件

vue中特殊的prop和事件

作者头像
阿超
发布于 2022-08-21 04:58:21
发布于 2022-08-21 04:58:21
62700
代码可运行
举报
文章被收录于专栏:快乐阿超快乐阿超
运行总次数:0
代码可运行

我们知道v-model可以用于input等标签,当做语法糖进行绑值

对于我们自定义的组件,其实也可以使用

官方文档

例如此处我们可以让input改变值时,父组件绑定的值一并改变

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<template>
	<input
      type="checkbox"
      :checked="value"
      @change="$emit('input', $event.target.checked)"
    />
</template>
<script>
    export default{
        props:{
            value:{
                type:Boolean,
                default:()=>false
            }
        }
    }
</script>

父组件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<base-checkbox v-model="lovingVue"></base-checkbox>

<base-checkbox> 触发一个 change 事件并附带一个新的值的时候,这个 lovingVue 的 property 将会被更新

我们还可以使用model给这这个v-model绑定的prop和事件取别名:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<template>
	<input
      type="checkbox"
      :checked="checked"
      @change="$emit('change', $event.target.checked)"
    />
</template>
<script>
    export default{
        model: {
    		prop: 'checked',
		    event: 'change'
  		},
        props:{
            value:{
                checked: Boolean,
                default:()=> false
            }
        }
    }
</script>

此处用v-bind:value一样的效果

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<base-checkbox :value="lovingVue"></base-checkbox>
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-04-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Vue.js-自定义事件例子 原
一个组件上的 v-model 默认会利用名为 value 的 prop 和名为 input 的事件,但是像单选框、复选框等类型的输入控件可能会将 value 特性用于不同的目的。model 选项可以用来避免这样的冲突:
tianyawhl
2019/04/04
1.7K0
Vue父子组件的通信
Prop 是你可以在组件上注册的一些自定义 attribute。 当一个值传递给一个 prop attribute 的时候,它就变成了那个组件实例的一个 property。
名字是乱打的
2021/12/22
1.3K0
Vue父子组件的通信
Vue 组件(二):父子组件通信
子组件是不能直接访问父组件中的数据的,但有时候父子组件之间需要进行数据交互,这就涉及到了父子组件通信的问题。简单来说,父组件向子组件通信是通过 props 进行的,而子组件向父组件通信则是通过自定义事件进行的。
Chor
2019/11/07
9490
深入了解Vue.js组件笔记
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/101434.html原文链接:https://javaforall.cn
全栈程序员站长
2022/06/29
1920
开心档之Vue教程1
class 与 style 是 HTML 元素的属性,用于设置元素的样式,我们可以用 v-bind 来设置样式属性。
爱学iOS的小麦子
2023/03/02
1.8K0
vue之vue组件component整理
组件是可复用的 Vue 实例,且带有一个名字:在这个例子中是。我们可以在一个通过 new Vue 创建的 Vue 根实例中,把这个组件作为自定义元素来使用:
山行AI
2019/07/30
6.8K0
vue之vue组件component整理
Vue 组件中使用 v-module
v-model 双向绑定实际上就是通过子组件中的 $emit 方法派发 input 事件,父组件监听 input 事件中传递的 value 值,并存储在父组件 data 中;然后父组件再通过 prop 的形式传递给子组件 value 值,再子组件中绑定 input 的 value 属性即可。
JS菌
2019/05/06
3K0
Vue 组件中使用 v-module
在 Vue 中创建自定义输入
基于组件的库或框架(如 Vue )可以创建 可重用组件 ,它能在各自应用程序中相互传递数据,这些框架能确保这些数据是一致的,并且(希望)简化了它们的使用方式。
疯狂的技术宅
2019/03/28
6.7K0
【Vue】数据通信——我们从组件通信说起
vue是数据驱动视图更新的框架, 所以对于vue来说组件间的数据通信非常重要。我们Vue数据通信就从组件通信开始说起。
DDGarfield
2022/06/23
3K0
【Vue】数据通信——我们从组件通信说起
Vue 2.X 文档阅读笔记二 (深入组件)
官方推荐使用写法1来定义全局注册组件命名,以避免可能出现的与HTML元素相冲突的情况。
前端_AWhile
2019/08/30
1.5K0
Vue学习笔记---暂保存
当我们创建这样一个Vue实例后,它就挂在到了一个id为app的dom对象上,我们就不再需要和HTML直接交互了,我们仅仅需要利用Vue实例操作即可
名字是乱打的
2021/12/23
3K0
Vue学习笔记---暂保存
一个合格的中级前端工程师应该掌握的 20 个 Vue 技巧
之前写过一篇文章,关于 Vue 属性透传的,文章中我列举了很多种方法去实现属性透传。其中包括直接设置 props,v-bind="$attrs",render function 等方式。感兴趣,详情看 【Vue 进阶】——如何实现组件属性透传?
GopalFeng
2020/09/24
6.1K0
一个合格的中级前端工程师应该掌握的 20 个 Vue 技巧
48·灵魂前端工程师养成-Vue表单和v-model
-多年互联网运维工作经验,曾负责过大规模集群架构自动化运维管理工作。 -擅长Web集群架构与自动化运维,曾负责国内某大型金融公司运维工作。 -devops项目经理兼DBA。 -开发过一套自动化运维平台(功能如下): 1)整合了各个公有云API,自主创建云主机。 2)ELK自动化收集日志功能。 3)Saltstack自动化运维统一配置管理工具。 4)Git、Jenkins自动化代码上线及自动化测试平台。 5)堡垒机,连接Linux、Windows平台及日志审计。 6)SQL执行及审批流程。 7)慢查询日志分析web界面。
DriverZeng
2022/11/08
5930
48·灵魂前端工程师养成-Vue表单和v-model
Vue基础:组件--组件及组件通信
组件可以扩展 HTML 元素,封装可重用的代码。在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功能。在有些情况下,组件也可以是原生 HTML 元素的形式,以is特性扩展。
奋飛
2019/08/15
1.9K0
vue实战中的一些小技巧
路由懒加载可以让我们的包不需要一次把所有的页面的加载进来,只加载当前页面的路由组件就行。
yyds2026
2022/10/17
3760
Vue 实战中的一些小魔法
路由懒加载可以让我们的包不需要一次把所有的页面的加载进来,只加载当前页面的路由组件就行。
逆锋起笔
2021/06/11
6420
Vue 自定义组件实现v-model双向绑定
现在就可以灵活自定义自己的双向绑定组件了,如果组件使用频繁的话,可以注册到全局组件,就不用一次次引入了。
前端小tips
2021/12/10
2.6K0
Vue 自定义组件实现v-model双向绑定
老司机读书笔记——Vue学习笔记
在默认情况下,v-model 在每次 input 事件触发后将输入框的值与数据进行同步 (除了上述输入法组合文字时)。你可以添加 lazy 修饰符,从而转变为使用 change 事件进行同步:
老司机Wicky
2018/08/22
3.4K0
老司机读书笔记——Vue学习笔记
Vue2/3 自定义组件的 v-model 到底怎么写?💎
在使用第三方UI组件库时会发现可以在他们的组件上使用 v-model ,比如 Element-UI 或者 Element-plus 的 el-input 就可以使用 v-model 进行数据绑定。
德育处主任
2022/09/09
8440
Vue2/3 自定义组件的 v-model 到底怎么写?💎
详解vue组件三大核心概念
本文主要介绍属性、事件和插槽这三个vue基础概念、使用方法及其容易被忽略的一些重要细节。如果你阅读别人写的组件,可以从这三个部分展开,它们可以帮助你快速了解一个组件的所有功能。
Nealyang
2019/09/29
1.3K0
详解vue组件三大核心概念
相关推荐
Vue.js-自定义事件例子 原
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验