VUE学习-自定义修饰符
自定义修饰符
组件
const myComponent = {
template: `<input type="text" :value="modelValue" @input="emitValue" />`,
props: {
modelValue: String,
},
emits: ['update:modelValue'],
methods:{
emitValue(e) {
let value = e.target.value
this.$emit('update:modelValue', value)
}
}
}
父组件中使用
<div id="app">
<my-component v-model="myText" />
</div>
<script>
const { createApp } = Vue
createApp({
components: {
myComponent,
},
data() {
return {
myText: ''
}
},
watch: {},
methods: {}
}).mount('#app')
</script>
父组件传值时添加修饰器
<my-component v-model.capitalize="myText" />
子组件接收修饰器并定义功能
props: {
modelValue: String,
// 接收v-model的修饰器
modelModifiers: {
default: () => ({})
}
},
created() {
// 打印v-model挂载的修饰器
console.log(this.modelModifiers) // { capitalize: true }
},
methods:{
emitValue(e) {
let value = e.target.value
// 如果v-model 挂载了 `capitalize`
if (this.modelModifiers.capitalize) {
// 把首位大写并拼接除首位的剩余字符串
value = value.charAt(0).toUpperCase() + value.slice(1)
console.log(value)
}
// 把处理后的字符串赋给 modelValue
this.$emit('update:modelValue', value)
}
}
VUE学习-自定义修饰符的更多相关文章
- vue中的修饰符
Vue2.0学习笔记:Vue事件修饰符的使用 事件处理 如果需要在内联语句处理器中访问原生DOM事件.可以使用特殊变量$event,把它传入到methods中的方法中. 在Vue中,事件修饰符处理 ...
- Vue的事件修饰符
转载于:https://www.cnblogs.com/xuqp/p/9406971.html 事件处理 如果需要在内联语句处理器中访问原生DOM事件.可以使用特殊变量$event,把它传入到meth ...
- Mongoose 预定义模式修饰符 Getters 与 Setters 自定义修饰符
mongoose 预定义模式修饰符 mongoose 提供的预定义模式修饰符,可以对我们增加的数据进行一些格式化,主要有:lowercase.uppercase .trim,这里不一一演示,对trim ...
- vue中.sync 修饰符
一直以来,都不太明白.sync的用法,归根结底原因在于,没有仔细阅读“.sync修饰符”. 正好,最近在拿一个项目练手,然后使用了elment-ui,然后在用到dialog的时候,属性visible是 ...
- vue中.sync修饰符,实现子组件实时更新父组件的值
vue 修饰符sync的功能是:当一个子组件改变了一个 prop 的值时,这个变化也会同步到父组件中所绑定. 不过它有一个前身,先来看看.sync出现之前是如何实现的 父组件中(传递给子组件一个值:p ...
- Vue--按键修饰符(逐个学习按键修饰符)
在监听键盘事件时,我们经常需要检查常见的键值.Vue 允许为 v-on 在监听键盘事件时添加按键修饰符: <!-- 只有在 `keyCode` 是 13 时调用 `vm.submit()` -- ...
- Vue--事件处理(逐个学习事件修饰符)
.capture .self .once 主要学习这三个事件修饰符的用法先来看看capture capture即是给元素添加一个监听器,当元素发生冒泡时,先触发带有该修饰符的元素.若有多个该修饰符,则 ...
- vue之.native修饰符
.native 修饰符就是用来注册元素的原生事件而不是组件自定义事件的 比如:自定义 Button.vue 组件 <template> <button type="butt ...
- vue 之 .sync 修饰符
在一些情况下,我们可能会需要对一个 prop (父子组件传递数据的属性) 进行“双向绑定”. 在vue 1.x 中的 .sync 修饰符所提供的功能.当一个子组件改变了一个带 .sync 的prop的 ...
- Vue表单修饰符(lazy,number,trim)
lazy:使用了这个修饰符将会从“input事件”变成change事件进行同步 <div id="example"> <input type="text ...
随机推荐
- P8865 [NOIP2022] 种花
简要题意 \(T\) 组数据,给你一个 \(n\times m\) 的 \(01\) 矩阵. \(0\) 部分可以组成 \(A_c\) 个 \(\texttt{C}\) 型图案和 \(A_f\) 个 ...
- C 语言初学者必备开发工具——Dev-Cpp [ 图文安装教程 ]
前言 C 语言是一门功能强大的专业化编程语言,深受专业程序员和业余编程爱好者的喜爱,同时 C 语言也是当今最流行的嵌入式开发语言.大多数嵌入式项目的开发都是用 C 语言来编写的. 既然 C 语言这么厉 ...
- 03初识MapReduce
初识MapReduce 一.什么是MapReduce MapReduce是一种编程范式,它借助Map将一个大任务分解成多个小任务,再借助Reduce归并Map的结果.MapReduce虽然原理很简单, ...
- 迁移学习(ADDA)《Adversarial Discriminative Domain Adaptation》
论文信息 论文标题:Adversarial Discriminative Domain Adaptation论文作者:Eric Tzeng, Judy Hoffman, Kate Saenko, Tr ...
- touchke变化值小的解决办法
方法一,提高主频 方法二,减小充电时间. 方法三,充电电流减半(具体看RM手册touchkey章节) 建议测试时采样值维持在3000-4000 其实以上操作就是增大Y轴间隔,以增大按下和未按下时的采样 ...
- 腾讯出品小程序自动化测试框架【Minium】系列(五)API详解(中)
写在前面 又有好久没更新小程序自动化测试框架Minium系列文章了,主要真的太忙,尽量做到每周一更吧,还请大家能够理解! 上篇文章为大家分享关于Minium中Minium.App模块的API 使用,接 ...
- Nginx11 openresty连接redis(lua-resty-redis)
1 官网 http://openresty.org/cn/lua-resty-redis-library.html https://github.com/openresty/lua-resty-red ...
- 不花钱几分钟让你的站点也支持https
前言 现在,免费SSL证书已经很普遍了,但是,申请和配置SSL证书仍然是一件较为繁琐的事,修改web服务配置在所难免,且不同的web服务配置方法不一样,不具备通用性.本文介绍一种通用的快速配置方法,w ...
- python3中,isinstance() 函数
#isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type(). #返回值:如果对象的类型与参数二的类型相同则返回True,否则返回False 使用isinstance函数的实 ...
- Ubuntu18.04中用CMake-gui安装OpenCV3.2.0和OpenCV_contrib-3.2.0
下载和添加依赖包1.首先更新 apt-get,在安装前最好先更新一下系统,不然有可能会安装失败.在终端输入: sudo apt-get update sudo apt-get upgrad ...