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 相关文章推荐
JS Timing
Apr 21 Javascript
js原型链原理看图说明
Jul 07 Javascript
javascript自适应宽度的瀑布流实现思路
Feb 20 Javascript
window.event.keyCode兼容IE和Firefox实现js代码
May 30 Javascript
js中 javascript:void(0) 用法详解
Aug 11 Javascript
JavaScript jquery及AJAX小结
Jan 24 Javascript
AngularJS身份验证的方法
Feb 17 Javascript
Angularjs的ng-repeat中去除重复数据的方法
Aug 05 Javascript
js canvas实现放大镜查看图片功能
Jun 08 Javascript
详解使用vuex进行菜单管理
Dec 21 Javascript
详解基于Vue cli生成的Vue项目的webpack4升级
Jun 19 Javascript
vue实现将一个数组内的相同数据进行合并
Nov 07 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
4.与数据库的连接
2006/10/09 PHP
php中使用parse_url()对网址进行解析的实现代码(parse_url详解)
2012/01/03 PHP
PHP高级对象构建 多个构造函数的使用
2012/02/05 PHP
深入eAccelerator与memcached的区别详解
2013/06/06 PHP
PHP字符串的连接的简单实例
2013/12/30 PHP
thinkPHP5.0框架事务处理操作简单示例
2018/09/07 PHP
跨浏览器的设置innerHTML方法
2006/09/18 Javascript
IE6、IE7中setAttribute不支持class/for/rowspan/colspan等属性
2011/08/28 Javascript
javascript学习笔记(四) Number 数字类型
2012/06/19 Javascript
JavaScript中:表达式和语句的区别[译]
2012/09/17 Javascript
Javascript alert消息换行的方法
2013/08/07 Javascript
DOM 高级编程
2015/05/06 Javascript
javascript实现PC网页里的拖拽效果
2016/03/14 Javascript
基于LayUI分页和LayUI laypage分页的使用示例
2017/08/02 Javascript
javascript计算渐变颜色的实例
2017/09/22 Javascript
JS实现关键词高亮显示正则匹配
2018/06/22 Javascript
微信小程序实现传递多个参数与事件处理
2019/08/12 Javascript
JS实现碰撞检测效果
2020/03/12 Javascript
[01:02:07]Liquid vs Newbee 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
python关闭windows进程的方法
2015/04/18 Python
Python实现 PS 图像调整中的亮度调整
2019/06/28 Python
Python二元赋值实用技巧解析
2019/10/25 Python
利用OpenCV和Python实现查找图片差异
2019/12/19 Python
Pytorch转onnx、torchscript方式
2020/05/25 Python
python将字典内容写入json文件的实例代码
2020/08/12 Python
css3media响应式布局实例
2016/07/08 HTML / CSS
英国领先的NHS批准的在线药店:Pharmacy2U
2017/01/06 全球购物
西班牙多品牌鞋店连锁店:Krack
2018/11/30 全球购物
成都思必达公司C#程序员招聘面试题
2013/06/26 面试题
餐厅经理岗位职责范本
2014/02/17 职场文书
卫生系统先进事迹
2014/05/13 职场文书
慈善晚会策划方案
2014/05/14 职场文书
在校大学生自我评价范文
2014/09/12 职场文书
医院领导班子查摆问题对照检查材料思想汇报
2014/10/08 职场文书
2015年卫生监督工作总结
2015/05/21 职场文书
聋哑人盗窃罪辩护词
2015/05/21 职场文书