vue子传父关于.sync与$emit的实现
更新时间:2019年11月05日 15:39:51 作者:不逗
这篇文章主要介绍了vue子传父关于.sync与$emit的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
$emit(update: prop, "newPropVulue") 这个模式,使子组件向父组件传达:更新属性,并抛出新的属性值
.sync 修饰符 是父组件中修改prop值得修饰符
一:什么地方需要用到.sync修饰符呢
当子传父,父级有两数据,而没有v-modal时
例如iview的Tree组件中:
父级:
<folder-tree
:folder-list.sync="folderList"
:file-list.sync="fileList"
:folder-drop="folderDrop"
:file-drop="fileDrop"
:beforDelete="beforeDelete"
/>
import FolderTree from '_c/folder-tree'
export default {
components: {
FolderTree
},
}
子级:
<Tree :data="folderTree" :render="renderFunc"></Tree>
子级方法中的写法:
let updateListName = isFolder ? 'folderList' : 'fileList'
this.$emit(`update:${updateListName}`, list)
二:.sync与$emit的写法问题
使用.sync修饰符,即
// this.$emit('update:folder-tree',100); //无效
this.$emit('update:folderTree',100); //有效
//......
<folder-tree v-bind:folder-tree.sync="test"></folder-tree>
与不使用.sync,即
this.$emit('update:folder-tree',100); //有效
//this.$emit('update:folderTree',100); // 无效
//......
<folderTree v-bind:father-num="test" v-on:update:folder-tree="test=$event" ></folderTree>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
vue elementUI table 自定义表头和行合并的实例代码
这篇文章主要介绍了vue elementUI table 自定义表头和行合并的实例代码,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2019-05-05
Vue 3.0 前瞻Vue Function API新特性体验
这篇文章主要介绍了Vue 3.0 前瞻Vue Function API新特性体验,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-08-08
解决vite.config.js无法使用__dirname的问题
这篇文章主要介绍了解决vite.config.js无法使用__dirname的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2023-10-10


最新评论