vue2.0使用记录
父组件给子组件传值【props】
1.首先在父组件的script标签中引入子组件
import Children from './Children'
2.在template内引入子组件
<Children></Children>
3.将要传递的参数写在Children里
<Children
:parameterName1="parameterVal1" <!--注意:parameterName是子组件要接受的参数名,要和子组件中props中的对象名对应-->
:parameterName2="parameterVal2"
...
>
</Children>
4.然后在子组件中使用props接受
//html
<div :title="parameterName1">{{parameterName1}}</div>
// js
props:{
parameterName1:{
type:String,
default:''
},
parameterName2:{
type:Number, //期待接收的数据类型,如果类型传错,vue将抛出异常
default:''
}
},
created() {
console.log(this.parameterName1) //可以在生命周期钩子中直接使用
},
methods:{
fun:function(){
console.log(this.parameterName2) //可以在生命周期钩子中直接使用
}
}
子组件给父组件传值【$emit】
1.首先在父组件内自定义一个事件
//html
<Children @clickItem="backList"></Children> <!--clickItem为自定义的事件名-->
//js
backList:function (item) { //item为子组件传过来的数据
this.showChild = item;
console.log(item); //true
}
2.然后在子组件内使用$emit来触发父组件中的自定义方法
//html
<button @click="back(true)">点我一下试试</button> //back方法内的参数‘true’是要传递给父组件的数据
//js
back:function (isShow) {
this.$emit('clickItem',isShow); //注意:第一个参数必须是父组件中自定义的事件名(必须保持一直),第二个参数为子组件要给父组件传递的参数
}
路由跳转传参【params】
this.$router.push({
path: '/play',
name: 'Play',
params:{
songmid:this.songmid,
songs:this.songs
}
})
接受路由参数【$route】
this.$route.params.songmid; //注意是$route 而不是$router ; 添加路由的时候才用$router
slot
单个slot
1.首先在子组件内设定slot标签
<template>
<slot>占个坑先</slot>
</template>
2.然后在父组件内引入子组件
<Children></Children> <!--输出:占个坑先--> 注意:slot可以在父组件内缺省,缺省的话就是使用子组件内slot的值
<Children>
<span>这个坑归父组件使用了</span> <!--输出:这个坑归父组件使用了-->
</Children>
具名slot
1.首先在子组件内设定slot标签,并且slot标签上设定具体的name属性
<template>
<slot name="keng">占个坑先</slot>
</template>
2.然后在父组件内引入子组件
<Children>
<span :slot="keng">这个坑归父组件使用了</span> <!--输出:这个坑归父组件使用了--> 注意:span标签的slot属性必须写,而且属性值必须要和子组件内slot的name值一样
</Children>
vue2.0使用记录的更多相关文章
- Vue2.0个人记录的学习笔记【待续】
一.Vue实例对象 我们构造一个实例对象 需要new一个Vue var my = new Vue({ el:‘#app’ ,[ app是装载的位置] template: ‘<div>< ...
- vue2.0小小记录
1.关于路由跳转方法:push this.$router.push({name:'master',params:{id:'参数'}}); //name和params搭配,刷新的话,参数会消失 this ...
- vue2.0实战记录
1. 初始化项目vue init webpack caseone cd caseonecnpm installcnpm install less less-loader -Dcnpm install ...
- 饿了么基于Vue2.0的通用组件开发之路(分享会记录)
Element:一套通用组件库的开发之路 Element 是由饿了么UED设计.饿了么大前端开发的一套基于 Vue 2.0 的桌面端组件库.今天我们要分享的就是开发 Element 的一些心得. 官网 ...
- Vuex2.0+Vue2.0构建备忘录应用实践
一.介绍Vuex Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化,适合于构建中大型单页应用. ...
- 一步步构造自己的vue2.0+webpack环境
前面vue2.0和webpack都已经有接触了些(vue.js入门,webpack入门之简单例子跑起来),现在开始学习如何构造自己的vue2.0+webpack环境. 1.首先新建一个目录vue-wk ...
- 项目vue2.0仿外卖APP(六)
goods 商品列表页开发 布局编写 除了商品之外还有购物车,还有个详情页,挺复杂的. 两栏布局:左侧固定宽度,右侧自适应,还是用flex. 因为内容可能会超过手机高度,超过就隐藏.左右两侧的内容是可 ...
- Vue2.0的通用组件
饿了么基于Vue2.0的通用组件开发之路(分享会记录) Element:一套通用组件库的开发之路 Element 是由饿了么UED设计.饿了么大前端开发的一套基于 Vue 2.0 的桌面端组件库. ...
- vue2.0实现分页组件
最近使用vue2.0重构项目, 需要实现一个分页的表格, 没有找到合适的组件, 就自己写了一个, 效果如下: 该项目是使用 vue-cli搭建的, 如果你的项目中没有使用webpack,请根据代码自己 ...
随机推荐
- j-linkV8固件更新(任意版本)
在使用j-link v8调试程序时,容易出现固件丢失或出错的情况,导致电脑不能识别,j-link上面的灯不亮.我今天刚刚遇到了这个情况,于是就拆开外壳,在网上搜索资料,发现刷固件相关的还真多,但是有一 ...
- Django的ContentType框架django_conent_type
Django包含了一个conenttype应用程序,记录了Django项目中安装的所有模型,为当前项目所有基于Django驱动的model提供了更高层次的抽象接口. 一.概述 ContentTypes ...
- mysql高可用架构 -> MHA部署-04
MHA架构图 本次MHA的部署基于GTID复制成功构建,普通主从复制也可以构建MHA架构. 下载所需的软件包 mkdir /server/tools -p //创建存放包的目录 [root@db01 ...
- redhat6.5文件共享
以下操作均需要root用户 a端: 固定nfs端口 #vi /etc/sysconfig/nfs 将里面的RQUOTAD_PORT.LOCKD_TCPPORT.LOCKD_UDPPORT.MOUNTD ...
- 【Android开发】之MediaPlayer的错误分析
最近在做媒体播放器,使用了Android自带的MediaPlayer,经常性会碰到MediaPlayer报错的情况,找过网上的,感觉总结的不是很好或者比较散.下面,我来总结一下使用MediaPlaye ...
- 【鬼脸原创】谷歌扩展--知乎V2.0
目的: 用键盘替代鼠标,做一个安静刷知乎的美男(女)子! 功能: 功能 按键 说明 直接定位到搜索框 q 打开 首页 w 打开 话题 e 打开 发现 r 打开 消息 m 打开 ...
- 国内能用的NTP服务器及和标准源的偏差值
中国境内可以使用的NTP服务器的IP地址,和泰福特服务器的时间偏差值,泰福特时钟服务器实时连接天线,测试前已经连接天线超过72小时 time-a.nist.gov 129.6.15.28 NIST, ...
- 洛谷P2018消息传递
传送门啦 这个树形dp就没那么简单了,运用了一下贪心的思想 不同的排序方法对应着不同的转移方程,如果我们用 $ f[x] = max(f[x] , b[i] +cnt - i + 1) $ 来进行转移 ...
- Centos之字符串搜索命令grep
grep [选项] 字符串 文件名 在文件当中匹配符合条件的字符串 选项: -i 忽略大小写 -v 排除指定字符串 [root@localhost ~]# grep "work" ...
- Ubuntu 14.04 16.04 Linux nvidia 驱动下载与安装
Ubuntu 14.04 16.04 nvidia 驱动安装 最简单直观的方式是在如下的对话框中直接选择驱动安装即可 但是有时候,驱动不够新,比如14.04用的是340.98版本,如果手动安装驱动可以 ...