vue 自定义组件使用v-model(组件通信方式1)
2024-10-14 06:15:38
父组件通过v-model传递值给子组件时,会自动传递一个value的prop属性,在子组件中通过this.$emit(‘input’,val)自动修改父组件v-model绑定的值
child:
<template>
<div>
<input type="text" v-model="mymessage" @change="changeValue">
</div>
</template> <script>
export default {
name: "child",
model:{
prop: "mymessage",
event: "change"
},这段代码可以忽略
props:{
value:String //v-model会自动传递一个字段为value的prop属性
},
data(){
return {
mymessage:this.value
}
},
methods:{
changeValue(){
this.$emit('input',this.mymessage);//通过如此调用可以改变父组件上v-model绑定的值
}
}
}
</script>
parent:
<template>
<div>
<p>this is parent compoent!</p>
<p>{{message}}</p>
<child v-model="message"></child>
</div>
</template> <script>
import child from '../components/child'
export default {
name: "parent",
data(){
return {
message:'hello'
}
},
components:{
child
}
}
</script>
以上代码可以写成子组件通过接收props父亲传递的数据,子组件通过$emit发射事件将父组件的input值message更改,代码如下:
child:
<template>
<div>
<input type="text" v-model="mymessage" @change="changeValue">
</div>
</template> <script>
export default {
name: "childOne",
props:{
value:String, //v-model会自动传递一个字段为value的prop属性
},
data(){
return {
mymessage:this.value
}
},
methods:{
changeValue(){
this.$emit('input',this.mymessage);//通过如此调用可以改变父组件上v-model绑定的值
}
}
}
</script>
parents:
<template>
<div>
<p>{{message}}</p>
<childone @input="handleMessage"></childone>//监听子组件发射的事件input,将input的value值更改 </div>
</template> <script>
import childone from '../components/childOne'
export default {
name: "parentOne",
components:{
childone
},
data(){
return {
message:'hello'
}
},
methods:{
handleMessage(val){
this.message = val
}
}
}
</script>
最新文章
- .Net 序列化(去除默认命名空间,添加编码)
- 精析AngularJS(一)
- 【Alpha版本】 第四天 11.10
- 优秀的API接口设计原则及方法(转)
- PHP类与面向对象(二)
- Libfilth(一个滤波器C库)使用
- Google Chrome 55 Released – Install on RHEL/CentOS 7/6 and Fedora 25-20
- java reflect 例子
- Android LogCat 日志记录
- ios专题 - APP设计流程
- mongodb新人扫盲
- Jsp分页的简单制作
- Android HTTP请求用HttpUrlConnection与HttpClient比较
- CSharpGL(49)试水OpenGL软实现
- Linux之常用软件-服务
- 获取异步API数据
- linux shell基本知识
- ajax中的async属性值之同步和异步及同步和异步区别
- CRUD简单查询
- 30行python让图灵机器人和茉莉机器人无止尽的瞎扯蛋
热门文章
- Azure CosmosDB (8) 性能指标Request Unit-RU
- SSD硬盘测速较低的原因备忘
- LeetCode 789. Escape The Ghosts
- solidworks的工程图模板文件和图纸格式文件
- Unity GeometryShader(从一个线框渲染的例子开始)
- C5.cpp
- LinkedHashMap和TreeMap的有序性
- python基础内容目录
- arc 097 E - Sorted and Sorted
- [论文阅读]MobileNetV2: Inverted Residuals and Linear Bottlenecks