Vue父子模版传值及组件传值的三种方法


Posted in Javascript onNovember 27, 2017

这里是针对于vue1.0,如果要学2.0,建议大家去看官方文档

vue2.0 http://vuefe.cn/guide/

vue-router2.0https://router.vuejs.org/zh-cn/essentials/getting-started.html

第一种

<div id="example">
  <my-component></my-component>
</div>
<script src="../node_modules/vue/dist/vue.js"></script>
<script>
  //向子组件传递数据
  //省略extend方法,vue内部调用
  Vue.component('my-component', {
    //模板里不支持驼峰的属性写法,需要转换为‘-'连接的属性写法
    data:function(){
      return{
        parentMsg: '雨歇微凉'
      }
    },
    template: '<div>'
        +'<input v-model="parentMsg">'
        +'<br>'
        +'<child-component :my-message="parentMsg"></child-component>'
        +'</div>',
    components: {
      'child-component': {
        props: ['myMessage'],
        template: '<div>{{myMessage}}</div>'
      }
    }
  });
  // 创建根实例1
  new Vue({
    el: '#example'
  });
</script>

有什么疑惑的,也可以去查官网的文档,prop传值,这里也可以直接拷去试,如果你有什么更好的简介,还希望能够拿出来分享。

第二种

<div id="example">
  <my-component></my-component>
</div>
<script src="../node_modules/vue/dist/vue.js"></script>
<script>
  //向子组件传递数据
  //省略extend方法,vue内部调用
  Vue.component('my-component', {
    data:function(){
      return {
        name:'xiaoming',
        age:20
      }
    },
    //模板里不支持驼峰的属性写法,需要转换为‘-'连接的属性写法
    template: '<div >{{name}}Parent</div><child1-component v-bind:msg-name="name"></child1-component>',
    components: {
      'child1-component': {
        // 声明 props
        props: ['msgName'],
        template: '<div>A child-111111 component!{{msgName}}</div>'
      }
    }
  });
  // 创建根实例1
  new Vue({
    el: '#example'
  });
</script>

第三种

<div id="example">
  <my-component></my-component>
</div>
<script src="../node_modules/vue/dist/vue.js"></script>
<script>
  //向子组件传递数据
  //省略extend方法,vue内部调用
  Vue.component('my-component', {
    data:function(){
      return {
        name:'xiaoming',
        age:20
      }
    },
    //模板里不支持驼峰的属性写法,需要转换为‘-'连接的属性写法
    template: '<div >{{name}}Parent</div><child1-component some="1 + 1"></child1-component><child2-component :some="1 + 3"></child2-component>', 
    components: {
      'child1-component': {
        // 声明 props
        props: ['some'],
        template: '<div>{{some}}</div>',
        ready:function(){
          console.log(this.some)
        }
      },
      'child2-component': {
        // 声明 props
        props: ['some'],
        template: '<div>{{some}}</div>',
        ready:function(){
          console.log(this.some)
        }
      }
    }
  });
  // 创建根实例1
  new Vue({
    el: '#example'
  });
</script>

这个例子主要是说明带冒号和不带冒号的区别,不带冒号就是一个字符串死值,带冒号会到父模版的data中去寻找值的具体内容。

总结

以上所述是小编给大家介绍的Vue父子模版传值及组件传值的三种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
lib.utf.js
Aug 21 Javascript
javascript实现面向对象类的功能书写技巧
Mar 07 Javascript
jquery 学习之二 属性相关
Nov 23 Javascript
js鼠标点击事件在各个浏览器中的写法及Event对象属性介绍
Jan 24 Javascript
jQuery实现的产品自动360度旋转展示特效源码分享
Aug 21 Javascript
javascript电商网站抢购倒计时效果实现
Nov 19 Javascript
jQuery实现弹幕效果
Feb 17 Javascript
Angular网络请求的封装方法
May 22 Javascript
详解操作虚拟dom模拟react视图渲染
Jul 25 Javascript
微信小程序局部刷新触发整页刷新效果的实现代码
Nov 21 Javascript
Vue页面刷新记住页面状态的实现
Dec 27 Javascript
JSON获取属性值方法代码实例
Jun 30 Javascript
VueJs 将接口用webpack代理到本地的方法
Nov 27 #Javascript
vue-awesome-swiper滑块插件使用方法详解
Nov 27 #Javascript
vue 自定义组件 v-model双向绑定、 父子组件同步通信的多种写法
Nov 27 #Javascript
vue轮播图插件vue-awesome-swiper
Nov 27 #Javascript
在vue中实现简单页面逆传值的方法
Nov 27 #Javascript
浅析Vue自定义组件的v-model
Nov 26 #Javascript
AngularJs 最新验证手机号码的实例,成功测试通过
Nov 26 #Javascript
You might like
如何在PHP中使用Oracle数据库(3)
2006/10/09 PHP
php中文字符截取防乱码
2008/03/28 PHP
php简单操作mysql数据库的类
2015/04/16 PHP
php生成过去100年下拉列表的方法
2015/07/20 PHP
JS event使用方法详解
2008/04/28 Javascript
javascript 闭包疑问
2010/12/30 Javascript
JQuery中html()方法使用不当带来的陷阱
2011/04/07 Javascript
JQuery EasyUI 日期控件如何控制日期选择区间
2014/05/05 Javascript
Grunt入门教程(自动任务运行器)
2015/08/06 Javascript
Angularjs注入拦截器实现Loading效果
2015/12/28 Javascript
react-native ListView下拉刷新上拉加载实现代码
2017/08/03 Javascript
jQuery中可见性过滤器简单用法示例
2018/03/31 jQuery
javascript少儿编程关于返回值的函数内容
2018/05/27 Javascript
快速解决angularJS中用post方法时后台拿不到值的问题
2018/08/14 Javascript
jQuery实现文本显示一段时间后隐藏的方法分析
2019/06/20 jQuery
vue中get请求如何传递数组参数的方法示例
2019/11/08 Javascript
javascript单张多张图无缝滚动实例代码
2020/05/10 Javascript
浅谈在vue-cli3项目中解决动态引入图片img404的问题
2020/08/04 Javascript
[03:49]DOTA2英雄基础教程 光之守卫
2014/01/14 DOTA
[01:32:10]NAVI vs VG Supermajor 败者组 BO3 第一场 6.5
2018/06/06 DOTA
python插入排序算法的实现代码
2013/11/21 Python
Django框架实现的分页demo示例
2019/05/25 Python
flask框架jinja2模板与模板继承实例分析
2019/08/01 Python
tensorflow入门:TFRecordDataset变长数据的batch读取详解
2020/01/20 Python
美国性感女装网站:bebe
2017/03/04 全球购物
关联、聚合(Aggregation)以及组合(Composition)的区别
2012/02/29 面试题
追悼会主持词
2014/03/20 职场文书
大学生社团活动总结
2014/04/26 职场文书
社区党建工作汇报材料
2014/08/14 职场文书
2014年乡镇党建工作总结
2014/11/11 职场文书
2015年超市工作总结
2015/04/09 职场文书
2015年计生协会工作总结
2015/04/24 职场文书
2015夏季作息时间调整通知
2015/04/24 职场文书
商标侵权律师函
2015/05/27 职场文书
创业计划书详解
2019/07/19 职场文书
vue实现input输入模糊查询的三种方式
2022/08/14 Vue.js