vue子传父关于.sync与$emit的实现


Posted in Javascript onNovember 05, 2019

$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>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS模拟的QQ面板上的多级可展开的菜单
Oct 10 Javascript
jQuery解决iframe高度自适应代码
Dec 20 Javascript
jquery实现图片等比例缩放以及max-width在ie中不兼容解决
Mar 21 Javascript
js函数返回多个返回值的示例代码
Nov 05 Javascript
Jquery在指定DIV加载HTML示例代码
Feb 17 Javascript
jquery easyui 对于开始时间小于结束时间的判断示例
Mar 22 Javascript
window.open()详解及浏览器兼容性问题示例探讨
May 29 Javascript
Angularjs实现带查找筛选功能的select下拉框示例代码
Oct 04 Javascript
vue.js中指令Directives详解
Mar 20 Javascript
layui的表单验证支持ajax判断用户名是否重复的实例
Sep 06 Javascript
使用TS来编写express服务器的方法步骤
Oct 29 Javascript
解决vue项目本地启动时无法携带cookie的问题
Feb 06 Vue.js
vue 路由子组件created和mounted不起作用的解决方法
Nov 05 #Javascript
vue跳转同一个组件,参数不同,页面接收值只接收一次的解决方法
Nov 05 #Javascript
vue Tab切换以及缓存页面处理的几种方式
Nov 05 #Javascript
vue动态路由:路由参数改变,视图不更新问题的解决
Nov 05 #Javascript
vue 解决路由只变化参数页面组件不更新问题
Nov 05 #Javascript
vue 实现路由跳转时更改页面title
Nov 05 #Javascript
Node.js开发之套接字(socket)编程入门示例
Nov 05 #Javascript
You might like
PHP strtr() 函数使用说明
2008/11/21 PHP
YII模块实现绑定二级域名的方法
2014/07/09 PHP
20个2014年最优秀的PHP框架回顾
2014/10/22 PHP
php类的自动加载操作实例详解
2016/09/28 PHP
php通过PHPExcel导入Excel表格到MySQL数据库的简单实例
2016/10/29 PHP
JScript内置对象Array中元素的删除方法
2007/03/08 Javascript
Javascript模块化编程(一)模块的写法最佳实践
2013/01/17 Javascript
js实现瀑布流的一种简单方法实例分享
2013/11/04 Javascript
JavaScript获取图片的原始尺寸以宽度为例
2014/05/04 Javascript
js中各种类型的变量在if条件中是true还是false
2014/07/16 Javascript
jquery实现邮箱自动填充提示功能
2015/11/17 Javascript
JavaScript生成二维码图片小结
2015/12/27 Javascript
jQuery EasyUi实战教程之布局篇
2016/01/26 Javascript
浅析AngularJS中的指令
2016/03/20 Javascript
jquery显示隐藏元素的实现代码
2016/05/19 Javascript
jQuery监听浏览器窗口大小的变化实例
2017/02/07 Javascript
vue.js实现简单轮播图效果
2017/10/10 Javascript
JS实现区分中英文并统计字符个数的方法示例
2018/06/09 Javascript
ndm:NPM的桌面GUI应用程序
2018/10/15 Javascript
webstorm中配置Eslint的两种方式及差异比较详解
2018/10/19 Javascript
Node.js使用MongoDB的ObjectId作为查询条件的方法
2019/09/10 Javascript
解决vuex数据异步造成初始化的时候没值报错问题
2019/11/13 Javascript
[49:30]DOTA2-DPC中国联赛正赛 Dragon vs Dynasty BO3 第二场 3月4日
2021/03/11 DOTA
详解python的数字类型变量与其方法
2016/11/20 Python
Python实现的朴素贝叶斯分类器示例
2018/01/06 Python
详解django.contirb.auth-认证
2018/07/16 Python
python关于矩阵重复赋值覆盖问题的解决方法
2019/07/19 Python
keras中epoch,batch,loss,val_loss用法说明
2020/07/02 Python
英国性感内衣和睡衣品牌:Bluebella
2018/01/26 全球购物
杭州信雅达系统.NET工程师面试试题
2015/02/08 面试题
车间班组长岗位职责
2013/11/13 职场文书
村党支部书记承诺书
2014/05/29 职场文书
党支部审查意见
2015/06/02 职场文书
新学期新寄语,献给新生们!
2019/11/15 职场文书
Linux中Nginx的防盗链和优化的实现代码
2021/06/20 Servers
python中Matplotlib绘制直线的实例代码
2021/07/04 Python