父组件给子组件传值【props】

1.首先在父组件的script标签中引入子组件

  1. import Children from './Children'

2.在template内引入子组件

  1. <Children></Children>

3.将要传递的参数写在Children里

  1. <Children
  2. :parameterName1="parameterVal1" <!--注意:parameterName是子组件要接受的参数名,要和子组件中props中的对象名对应-->
  3. :parameterName2="parameterVal2"
  4. ...
  5. >
  6. </Children>

4.然后在子组件中使用props接受

  1. //html
  2. <div :title="parameterName1">{{parameterName1}}</div>
  3. // js
  4. props:{
  5. parameterName1:{
  6. type:String,
  7. default:''
  8. },
  9. parameterName2:{
  10. type:Number, //期待接收的数据类型,如果类型传错,vue将抛出异常
  11. default:''
  12. }
  13. },
  14. created() {
  15. console.log(this.parameterName1) //可以在生命周期钩子中直接使用
  16. },
  17. methods:{
  18. fun:function(){
  19. console.log(this.parameterName2) //可以在生命周期钩子中直接使用
  20. }
  21. }

子组件给父组件传值【$emit】

1.首先在父组件内自定义一个事件

  1. //html
  2. <Children @clickItem="backList"></Children> <!--clickItem为自定义的事件名-->
  3. //js
  4. backList:function (item) { //item为子组件传过来的数据
  5. this.showChild = item;
  6. console.log(item); //true
  7. }

2.然后在子组件内使用$emit来触发父组件中的自定义方法

  1. //html
  2. <button @click="back(true)">点我一下试试</button> //back方法内的参数‘true’是要传递给父组件的数据
  3. //js
  4. back:function (isShow) {
  5. this.$emit('clickItem',isShow); //注意:第一个参数必须是父组件中自定义的事件名(必须保持一直),第二个参数为子组件要给父组件传递的参数
  6. }

路由跳转传参【params】

  1. this.$router.push({
  2. path: '/play',
  3. name: 'Play',
  4. params:{
  5. songmid:this.songmid,
  6. songs:this.songs
  7. }
  8. })

接受路由参数【$route】

  1. this.$route.params.songmid; //注意是$route 而不是$router ; 添加路由的时候才用$router

slot

单个slot

1.首先在子组件内设定slot标签

  1. <template>
  2. <slot>占个坑先</slot>
  3. </template>

2.然后在父组件内引入子组件

  1. <Children></Children> <!--输出:占个坑先--> 注意:slot可以在父组件内缺省,缺省的话就是使用子组件内slot的值
  2. <Children>
  3. <span>这个坑归父组件使用了</span> <!--输出:这个坑归父组件使用了-->
  4. </Children>

具名slot

1.首先在子组件内设定slot标签,并且slot标签上设定具体的name属性

  1. <template>
  2. <slot name="keng">占个坑先</slot>
  3. </template>

2.然后在父组件内引入子组件

  1. <Children>
  2. <span :slot="keng">这个坑归父组件使用了</span> <!--输出:这个坑归父组件使用了--> 注意:span标签的slot属性必须写,而且属性值必须要和子组件内slot的name值一样
  3. </Children>

vue2.0使用记录的更多相关文章

  1. Vue2.0个人记录的学习笔记【待续】

    一.Vue实例对象 我们构造一个实例对象 需要new一个Vue var my = new Vue({ el:‘#app’ ,[ app是装载的位置] template: ‘<div>< ...

  2. vue2.0小小记录

    1.关于路由跳转方法:push this.$router.push({name:'master',params:{id:'参数'}}); //name和params搭配,刷新的话,参数会消失 this ...

  3. vue2.0实战记录

    1. 初始化项目vue init webpack caseone cd caseonecnpm installcnpm install less less-loader -Dcnpm install ...

  4. 饿了么基于Vue2.0的通用组件开发之路(分享会记录)

    Element:一套通用组件库的开发之路 Element 是由饿了么UED设计.饿了么大前端开发的一套基于 Vue 2.0 的桌面端组件库.今天我们要分享的就是开发 Element 的一些心得. 官网 ...

  5. Vuex2.0+Vue2.0构建备忘录应用实践

    一.介绍Vuex Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化,适合于构建中大型单页应用. ...

  6. 一步步构造自己的vue2.0+webpack环境

    前面vue2.0和webpack都已经有接触了些(vue.js入门,webpack入门之简单例子跑起来),现在开始学习如何构造自己的vue2.0+webpack环境. 1.首先新建一个目录vue-wk ...

  7. 项目vue2.0仿外卖APP(六)

    goods 商品列表页开发 布局编写 除了商品之外还有购物车,还有个详情页,挺复杂的. 两栏布局:左侧固定宽度,右侧自适应,还是用flex. 因为内容可能会超过手机高度,超过就隐藏.左右两侧的内容是可 ...

  8. Vue2.0的通用组件

    饿了么基于Vue2.0的通用组件开发之路(分享会记录)   Element:一套通用组件库的开发之路 Element 是由饿了么UED设计.饿了么大前端开发的一套基于 Vue 2.0 的桌面端组件库. ...

  9. vue2.0实现分页组件

    最近使用vue2.0重构项目, 需要实现一个分页的表格, 没有找到合适的组件, 就自己写了一个, 效果如下: 该项目是使用 vue-cli搭建的, 如果你的项目中没有使用webpack,请根据代码自己 ...

随机推荐

  1. C/C++杂记:运行时类型识别(RTTI)与动态类型转换原理

    运行时类型识别(RTTI)的引入有三个作用: 配合typeid操作符的实现: 实现异常处理中catch的匹配过程: 实现动态类型转换dynamic_cast. 1. typeid操作符的实现 1.1. ...

  2. 将ipa文件安装到测试设备上的几种方法

    Installing Your App on Test Devices Using Xcode You can install iOS App files on devices using Xcode ...

  3. 按需引入antd报错问题

    1.使用create-react-app工具创建了一个项目 create-react-app antd-demo 2.安装babel-plugin-import npm install babel-p ...

  4. python dict交换key value值

    方法一: 使用dict.items()方式 dict_ori = {'A':1, 'B':2, 'C':3} dict_new = {value:key for key,value in dict_o ...

  5. hibernate cascade

    默认:none Cascade 属性值: none:在保存.删除修改对象的时候,不考虑其附属物的操作 save-update:在保存.更新当前对象时,级联保存.更新附属物. delete:在删除当前对 ...

  6. 日志、字段备注查询、自增ID联系设置、常用存储过程

    -----获取数据字典SQL(表字段说明)SELECT     [Table Name] = OBJECT_NAME(c.object_id),     [Column Name] = c.name, ...

  7. MySQL学习笔记:创建整年日期

    见识到另外一种创意,惊讶! 1.创建小数据表 0-9 # 创建小数据表 DROP TABLE IF EXISTS aa_numbers_small; CREATE TABLE aa_numbers_s ...

  8. 解决mysql不能远程登入的问题

    mysql远程不能登入,问题就在于当时设置的账号只限制本地访问,mysql默认也只是本地访问. 之前的设置: 通过命令行登录管理MySQL服务器(提示输入密码时直接回车): mysql> /us ...

  9. 《精通Python设计模式》学习结构型之外观模式

    这个我在工作中也有所应用的. 就是在真正的实现层上面,再封装一个函数的调用的. 这样就可以在内层函数作真正实现, 而外层调用函数对外开放, 隔离内外的变化性. from enum import Enu ...

  10. 黑马程序员_java基础笔记(11)...反射

    —————————— ASP.Net+Android+IOS开发..Net培训.期待与您交流! —————————— 1,字节码.2,Constructor类.3,Field类.4,Method类.5 ...