Vue 父子组件双向绑定传值

最简单的双向绑定(单文件中)就是表单元素的v-model了,如果同时设置v-model和value,value属性无效。

自定义v-model:(不推荐)

child:
<template><h1>{{ msg }}</h1>
</template>export default{model:{prop:'msg', // 指父组件设置 v-model 时,将变量值传给子组件的 msgevent:'parent-event' // 指父组件监听 parent-event 事件},props:{msg:String // 此处必须定义和model的prop相同的props,因为v-model会传值给子组件},mounted(){// 这里模拟异步将msg传到父组件v-model,实现双向控制setTimeout(_=>{let some = '3秒后出现的某个值'; // 子组件自己的某个值this.$emit('parent-event', some);  //通过 emit 触发parent-event,将some传递给父组件的v-model绑定的变量}, 3000);}
}
</script>
parent:
<template><children v-model="parentMsg"></children>
</template>
<script>
import children from './children.vue';
export default{components:{children},data(){return{parentMsg:'test'}},watch:{parentMsg(newV, oldV){console.log(newV,oldV);//三秒后控制台会输出//'3秒后出现的某个值','test'}}
}
</script>

自定义多个双向值(推荐):.sync修饰符

child:
<template><h1>{{ msg }}</h1>
</template>
<script>export default{props:{msg:String},mounted(){setTimeout(_=>{this.$emit('update:msg',some);},3000);}
}
</script>
parent:
<template><children :msg.sync="parentMsg"></children><!-- 此处只需在平时常用的单向传值上加上.sync修饰符 -->
</template>
<script>
import children from './children.vue';
export default{components:{children},data(){return{parentMsg:'test'}},watch:{parentMsg(newV,oldV){console.log(newV,oldV);}}
}
</script>

链接:https://juejin.im/post/5b5c2d986fb9a04f897840ac
来源:掘金

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/401470.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java逻辑运算符

// | 或 & 与 int x3; System.out.println(x>2&x<5); // ||短路或 &&短路与 区别短路逻辑表达式判断第一个表达式&#xff0c;如果出结果直接返回true/false &#xff0c;而非短路直到逻辑运算式全部运行完毕才返回&#xff1b; System.out.println…

json--js

json对象与js对象的转换&#xff1a; json2.js var jsObj{a:"1",b:"2" }var jsonObjJSON.stringify(jsObj); var aJSON.parse(jsonObj).a; alert(a);1. JSON.stringify 将js对象转为json 2. JSON.parse 将json对象转为js转载于:https://www.cnblogs.…

给easyui datagrid 添加mouseover和mouseout事件

http://www.loststop.com/archive/soft-and-internet/3819.html http://www.loststop.com/easyui/demo/datagrid6.html

关于自定义控件,可以编译通过,但是用时提示无法创建新实例。

上网查询发现 这种错误通常是控件中使用的配置信息存在于配置文件里&#xff0c;而在程序没有运行时&#xff0c;获取不到配置信息造成的。 例如&#xff1a; 错误用法&#xff1a; string strUri Application.Current.Resources["WcfServiceUrl"].ToString();//引发…

leetcode 3Sum C++

荒废好久没更新了&#xff0c;时间过得很快&#xff0c;转眼就2017年了&#xff0c;经历了苦闷的科研阶段&#xff0c;发了论文顺利毕业&#xff1b;也经过三地辗转奔波来去的找工作&#xff0c;最终还是犹犹豫豫选择了自己知道以后可能会后悔的&#xff0c;果然就后悔了。所以…

JavaScript 函数循环、延时、节流、防抖

函数循环(setInterval) 间隔指定的毫秒数不停地执行指定的代码 <button onclick"myStartFunction()">开始</button> <button onclick"myStopFunction()">停止</button><script> var myVar null; //全局function myTimer…

bash知识点:文件测试

bash知识点&#xff1a;文件测试&#xff08;测试文件是否存在&#xff0c;文件是某种类型&#xff09;单目测试-e file:测试文件是是否存在-a file&#xff1a;测试文件是是否存在-f file&#xff1a;测试是否为普通文件,是为真&#xff0c;否则为假-d file&#xff1a;测试是…

MVC 4 教程

MVC4 前件&#xff1a;visual studio 10 sp1 http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-aspnet-mvc-4 &#xff08;by Rick Anderson&#xff09; Music Store (by Jon Galloway) http://www.asp.net/mvc/tutorials/mvc-music-sto…

Linux下java/bin目录下的命令集合

Linux下JAVA命令&#xff08;1.7.0_79&#xff09; 命令 详解 参数列表 示例 重要程度 资料 appletviewer Java applet 浏览器。appletviewer 命令可在脱离万维网浏览器环境的情况下运行 applet。 Usage: appletviewer <options> url(s) where <options> …

火车采集小结

采集一个页面全部内容的正则&#xff1a;^(?<content>[\s\S]*?)$转载于:https://www.cnblogs.com/afish/p/3984680.html

vscode 开发常用

设置缩进空格&#xff1a;2个| 4个 文件–》首选项–》设置 代码缩进对齐 &#xff1a; Ctrl [ 和 Ctrl ] 实现文本的向左移动或者向右移动&#xff1b; Shift Alt F 实现代码的对齐

新手应该如何Javascript,JDom,JQuery,DWZ。。

作为web前端程序员来说想必这些东西大家都很熟悉了...但是作为初学者来说,如何学习 是一个很重要的问题,其实这些东西并不难,只是我们在学习的时候没有理清楚他们之间的概念导致我们盲目的学习, 以我自己为例子&#xff0c;希望能帮助到大家的学习。 在这之前我假设大家理解了…

gulp+PC前端静态页面项目开发

前言&#xff1a; 现在单页面很流行&#xff0c;但是在 PC 端多页面还是常态&#xff0c;所以构建静态页面的工具还有用武之地 gulp构建前言&#xff1a; 如今我们开发web网页的方式主要有几种&#xff0c;使用vue-cli、create-react-app、webpack、不借助构建工具等实现单页…

Struts2中jsp前台传值到action后台的三种方式以及valueStack的使用

struts2中的Action接收表单传递过来的参数有3种方法&#xff1a; 如&#xff0c;登陆表单login.jsp&#xff1a; 1 <form action"login" method"post"name"form1"> 2 3 4   用户名&#xff1a;<s:textfieldname"username&quo…

【Linux】vi编辑器命令

1)进入vi的命令 vi filename : 打开或新建文件&#xff0c;并将光标置于第一行首 vi n filename : 打开文件&#xff0c;并将光标置于第n行首 vi filename : 打开文件&#xff0c;并将光标置于最后一行首 vi /pattern filename: 打开文件&a…

The Architecture of Open Source Applications

http://www.aosabook.org/en/index.html 有 nginx http://www.aosabook.org/en/nginx.html转载于:https://www.cnblogs.com/cloudstorage/archive/2012/07/12/2588196.html

html2canvas生成海报的各种问题

html2canvas&#xff08;一&#xff09;官网下载安装&#xff08;二&#xff09;基础用法&#xff08;三&#xff09;生成海报问题canvas高分屏下的模糊问题html2canvas图片模糊问题canvas图片getImageData,toDataURL跨域问题1) 首先&#xff0c;图片服务器需要配置Access-Cont…

Bootstrap中DropDown插件显示下拉列表,点击下拉列表区域,不会再自动关闭。

目标&#xff1a; Bootstrap中DropDown插件显示下拉列表&#xff0c;点击下拉列表区域&#xff0c;不会再自动关闭。 参考&#xff1a;http://v3.bootcss.com/javascript/#dropdowns // http://stackoverflow.com/questions/19740121/keep-bootstrap-dropdown-open-when-cl…

前端字符串内HTML标签无效的处理方式

1&#xff09;将元素的innerText 赋值成 元素的 innerHTML。即可避免转义的问题&#xff0c;将字符串中包含的 HTML标签生效。 <div ref"introContent" class"intro__content">{{intro}}</div>mounted() {// let text this.$refs.introConte…

获取当前目录绝对路径

echo offecho 当前盘符&#xff1a;%~d0echo 当前盘符和路径&#xff1a;%~dp0echo 当前批处理全路径&#xff1a;%~f0echo 当前盘符和路径的短文件名格式&#xff1a;%~sdp0echo 当前CMD默认目录&#xff1a;%cd%echo 目录中有空格也可以加入""避免找不到路径echo 当…