本文实例讲述了vue组件数据传递、父子组件数据获取,slot,router路由功能。分享给大家供大家参考,具体如下:
一、vue默认情况下,子组件也没法访问父组件数据
document
二、数据传递
组件数据传递: √
1. 子组件获取父组件data
在调用子组件:
子组件之内:
props:['m','myMsg']
props:{
'm':String,
'myMsg':Number
}
2. 父级获取子级数据
*子组件把自己的数据,发送到父级
vm.$emit(事件名,数据);
v-on: @
1、子组件获取父组件data
方法一:
document 11111
方法二:
document 11111
2、 父级获取子级数据
方法一:
document 我是父级 -> {{msg}} 子组件-
注意:
- vm.dispatch(事件名,数据)子级向父级发送数据vm.dispatch(事件名,数据)子级向父级发送数据vm.broadcast(事件名,数据) 父级向子级广播数据
- 配合: event:{}
- 在vue2.0里面已经,报废了
slot:位置、槽口
作用: 占个位置,不覆盖原先的内容
类似ng里面 transclude (指令)
document
- 1111
- 2222
- 3333
- 111
- 222
- 333
xxxx这是默认的情况 welcome vue
这是默认的情况2
效果图:
vue-> SPA应用,单页面应用 vue-router路由
vue-resouce 交互
vue-router 路由
路由:根据不同url地址,出现不同效果
该课程配套用 0.7.13版本 vue-router
主页 home
新闻页 news
html:
主页 跳转链接 展示内容:
js:
//1. 准备一个根组件
var App=Vue.extend();
//2. Home News组件都准备
var Home=Vue.extend({
template:'我是主页'
});
var News=Vue.extend({
template:'我是新闻'
});
//3. 准备路由
var router=new VueRouter();
//4. 关联
router.map({
'home':{
component:Home
},
'news':{
component:News
}
});
//5. 启动路由
router.start(App,'#box');
跳转:
router.redirect({
'/':'/home'
});
下载vue-router:
vue-router路由:
document
- 主页
- 新闻
跳转:
document
- 主页
- 新闻
感兴趣的朋友可以使用在线HTML/CSS/Javascript代码运行工具:http://tools.jb51.net/code/HtmlJsRun测试上述代码运行效果。
希望本文所述对大家vue.js程序设计有所帮助。



