vue.js  父向子组件传参的实例代码


Posted in Javascript onOctober 29, 2017

1.新建componentA.vue组件,代码如下:

store.js代码如下:

const STORAGE_KEY = 'todos-vue.js'
export default{
  fetch(){
    return JSON.parse(window.localStorage.getItem(STORAGE_KEY) || '[]')
  },
  save(items){
    window.localStorage.setItem(STORAGE_KEY,JSON.stringify(items));
  }
}

App.vue代码如下:

<template>
 <div id="app">
  <h1 v-text="title"></h1>
  <input v-model="newItem" v-on:keyup.enter="addNew"/>
  <ul>
   <li v-for="item in items" v-bind:class="{finished:item.isFinished}" v-on:click='toogleFinish(item)'>
    {{item.label}}
   </li>
  </ul>
  <!-- 使用组件,注意驼峰命名法转化成短线 -->
  <!-- 向自组件传数据 -->
  <Component-a msgfromfather='you die!'></Component-a>
 </div>
</template>
<script>
import Store from './store'
import ComponentA from './components/componentA'  //该组件会被加载到该页面
export default {
 name: 'app',
 data () {
  return {
   title: 'this is a todo list',
   items:Store.fetch(),
   newItem:''
  }
 },
 components:{ //注册组件
  ComponentA
 },
 watch:{
   items:{
    handler(items){   //经过变化的数组会作为第一个参数传入
     Store.save(items)
    },
    deep:true    //深度复制
   }
 },
 methods:{
  toogleFinish(item){
   item.isFinished = !item.isFinished
  },
  addNew(){
   this.items.push({
    label:this.newItem,
    isFinished:false,
   })
   this.newItem = ''
  }
 }
}
</script>
<style>
#app {
 font-family: 'Avenir', Helvetica, Arial, sans-serif;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 text-align: center;
 color: #2c3e50;
 margin-top: 60px;
}
.finished{
 text-decoration: underline;
}
</style>

componentA.vue代码如下:

<template>
 <div class="hello">
  <h1>{{msg}}</h1>
  <h2>{{msgfromfather}}</h2>
  <button v-on:click="onClickMe">Click!</button>
 </div>
</template>
<<script>
export default {
 data(){
   return{
     msg:'Hello form component a'
   }
 },
 props:['msgfromfather'],//自组件接收数据
 methods:{
   onClickMe(){
     console.log(this.msgfromfather);
   }
 }
}
</script>
<style scoped>
</style>

点击按钮之后效果图如下:

vue.js  父向子组件传参的实例代码

总结

以上所述是小编给大家介绍的vue.js  父向子组件传参的实例代码,希望对大家有所帮助!

Javascript 相关文章推荐
ExtJs使用IFrame的实现代码
Mar 24 Javascript
jquery trim() 功能源代码
Feb 14 Javascript
jQuery实现Flash效果上下翻动的中英文导航菜单代码
Sep 22 Javascript
jQuery Mobile动态刷新页面样式的实现方法
May 28 Javascript
jQuery实现左侧导航模块的显示与隐藏效果
Jul 04 Javascript
node.js实现回调的方法示例
Mar 01 Javascript
JS触摸与手势事件详解
May 09 Javascript
bootstrap paginator分页前后台用法示例
Jun 17 Javascript
基于bootstrap页面渲染的问题解决方法
Aug 09 Javascript
vue.js 中使用(...)运算符报错的解决方法
Aug 09 Javascript
对layui初始化列表的CheckBox属性详解
Sep 13 Javascript
微信小程序实现3D轮播图效果(非swiper组件)
Sep 21 Javascript
vue.js todolist实现代码
Oct 29 #Javascript
javascript按钮禁用和启用的效果实例代码
Oct 29 #Javascript
jQuery实现切换隐藏与显示同时切换图标功能
Oct 29 #jQuery
bootstrap table sum总数量统计实现方法
Oct 29 #Javascript
vue.js语法及常用指令
Oct 29 #Javascript
基于vue.js快速搭建图书管理平台
Oct 29 #Javascript
JavaScript代码执行的先后顺序问题
Oct 29 #Javascript
You might like
漫荒推荐:画风超赞的国风漫画推荐 超长假期不无聊
2020/03/08 国漫
syphon 虹吸式咖啡冲泡冲煮倒水的得与失
2021/03/03 冲泡冲煮
php数组相加 array(“a”)+array(“b”)结果还是array(“a”)
2012/09/19 PHP
php获取、检查类名、函数名、方法名的函数方法
2015/06/25 PHP
Thinkphp5 微信公众号token验证不成功的原因及解决方法
2017/11/12 PHP
自己的js工具 Event封装
2009/08/21 Javascript
JQuery 构建客户/服务分离的链接模型中Table中的排序分析
2010/01/22 Javascript
js最简单的拖拽效果实现代码
2010/09/24 Javascript
node.js中的http.get方法使用说明
2014/12/14 Javascript
在JavaScript中操作时间之getYear()方法的使用教程
2015/06/11 Javascript
jquery实现页面常用的返回顶部效果
2016/03/04 Javascript
jQuery实现TAB选项卡切换特效简单演示
2016/03/04 Javascript
AngularJS入门之动画
2016/07/27 Javascript
jquery滚动条插件slimScroll使用方法
2017/02/09 Javascript
干货!教大家如何选择Vue和React
2017/03/13 Javascript
node.js的Express服务器基本使用教程
2019/01/09 Javascript
Vue中computed、methods与watch的区别总结
2019/04/10 Javascript
vue 弹出遮罩层样式实例
2020/07/22 Javascript
在vue中通过render函数给子组件设置ref操作
2020/11/17 Vue.js
Python Property属性的2种用法
2015/06/21 Python
详解在Python程序中自定义异常的方法
2015/10/16 Python
django之session与分页(实例讲解)
2017/11/13 Python
NetworkX之Prim算法(实例讲解)
2017/12/22 Python
PyQt5每天必学之创建窗口居中效果
2018/04/19 Python
python opencv判断图像是否为空的实例
2019/01/26 Python
python字符串,元组,列表,字典互转代码实例详解
2020/02/14 Python
python两个list[]相加的实现方法
2020/09/23 Python
详解通过focusout事件解决IOS键盘收起时界面不归位的问题
2019/07/18 HTML / CSS
跑鞋、网球鞋、网球拍、服装及装备:Holabird Sports
2016/09/19 全球购物
在线购买廉价折扣书籍和小说:BookOutlet.com
2018/02/19 全球购物
EM Cosmetics官网:由彩妆大神Michelle Phan创办的独立品牌
2020/04/27 全球购物
大整数数相乘的问题
2012/07/22 面试题
导师评语大全
2014/04/26 职场文书
计算机实训报告总结
2014/11/05 职场文书
物业项目经理岗位职责
2015/04/01 职场文书
Tomcat执行startup.bat出现闪退的原因及解决办法
2022/04/20 Servers