<div id='root'>
  <ul>
    <todo-item></todo-item>
  </ul>
</div>
<script>
  Vue.component('todo-item',{
    template:'<li>item</li>'
  })
</script>
全局组件:上面这种组件叫做全局组件,这种组件定义好了之后,直接在任何一个地方都可以使用这个组件
<div id='root'>
  <ul>
    <todo-item></todo-item>
  </ul>
</div>
<script>
  var todoItem = {
    template:'<li>item</li>'
  }
  new Vue({
    el:'#root',
    components:{
      'todo-item':todoItem
    }
  })
</script>
局部组件,上面这种叫做局部组件,需要通过components进行注册
每一个组件都是一个实例,一个vue是由千千万万个实例,也就是组件组成
父组件和子组件的通信需要怎么做?
需要发布订阅模式来做这个事情,子组件注册一个事件,父组件进行监听
<div id='root'>
  <input v-model='inputValue'/>
  <button @click='handleSubmit'>提交</button>
  <ul>
    <todo-item
      v-for='(item,index) of list'
      :key='index'
      :content='item'
      :index='index'
      @delete='handleDelete'
    >
    </todo-item>
  </ul>
</div>
<script>
  Vue.component('todo-item',{
    props:['content','index'],
    template:'<li @click="handleClick">{{content}}</li>',
    methods:{
      handleClick:function(index){
        this.$emit('delete',index)
      }
    }
  })   new Vue({
    el:'#root',
    data:{
      inputValue:'',
      list:[]
    },
    methods:{
      handleSubmit:function(){
        console.log(this.inputValue);
        this.list.push(this.inputValue);
        this.inputValue = '';
      },
      handleDelete:function(index){
        this.list.splice(index,1)
      }
    }
  })
</script>

vuejs组件的更多相关文章

  1. 深入理解 Vuejs 组件

    本文主要归纳在 Vuejs 学习过程中对于 Vuejs 组件的各个相关要点.由于本人水平有限,如文中出现错误请多多包涵并指正,感谢.如果需要看更清晰的代码高亮,请跳转至我的个人站点的 深入理解 Vue ...

  2. Vuejs——(8)Vuejs组件的定义

    版权声明:出处http://blog.csdn.net/qq20004604   目录(?)[+]   本篇资料来于官方文档: http://cn.vuejs.org/guide/components ...

  3. vuejs组件库pk介绍

    vuejs可以说是近2年多以来最火的前端框架,随之而来就产生了非常多的组件库,我们来看看其中比较著名和人气旺盛的几个 1. Vuetify-符合material design设计理念, star数量7 ...

  4. vuejs 组件通讯

    在应用复杂时,推荐使用vue官网推荐的vuex,以下讨论简单SPA(single-page application 简称为 SPA)中的组件间传值. 一.路由传值 路由对象如下图所示: 在跳转页面的时 ...

  5. vuejs组件交互 - 01 - 父子组件之间的数据交互

    父子组件之间的数据交互遵循: props down - 子组件通过props接受父组件的数据 events up - 父组件监听子组件$emit的事件来操作数据 示例 子组件的点击事件函数中$emit ...

  6. Vuejs - 组件式开发

    初识组件 组件(Component)绝对是 Vue 最强大的功能之一.它可以扩展HTML元素,封装可复用代码.从较高层面讲,可以理解组件为自定义的HTML元素,Vue 的编译器为它添加了特殊强大的功能 ...

  7. VueJs组件prop验证简单理解

    今天看了vuejs的组件,看到了prop组件,主要作用是在传入数据的时候对传入的值做判断,写了个小例子. <div id="app"> <my-child :nu ...

  8. 给定制的vuejs组件添加v-model双向绑定支持

    用过vuejs的前端工程师,对于v-model一定印象深刻.它向类似textarea,input等原生html原生添加双向数据绑定的能力非常方便.但是对于你的定制vue组件并不是能够直接应用v-mod ...

  9. [Vuejs] 组件 v-if 和 v-show 切换时生命周期钩子的执行

    v-if 初始渲染 初始值为 false 组件不会渲染,生命周期钩子不会执行,v-if 的渲染是惰性的. 初始值为 true 时,组件会进行渲染,并依次执行 beforeCreate,created, ...

  10. vuejs组件交互 - 03 - vuex状态管理实现组件交互

    组件交互模式的使用场景 简单应用直接使用props down,event up的模式就可以了 小型应用使用事件中心模式即可 中大型应用使用vuex的状态管理模式 vuex 包含要管理的应用数据和更新数 ...

随机推荐

  1. vue里的tab标签

    <template> <div class="Test2"> <div class="tabs_wrap" v-model=&qu ...

  2. JVM 零散知识

    年轻代大小选择: 响应时间优先的应用: 尽可能设大,直到接近系统的最低响应时间限制.在此种情况下,年轻代收集发生的频率也是最小的.同时,减少到达年老代的对象. 吞吐量优先的应用: 尽可能的设置大,可能 ...

  3. hdu1695(莫比乌斯反演模板)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1695 题意: 对于 a, b, c, d, k . 有 x 属于 [a, b],  y 属于 [c, ...

  4. 谢特——后缀数组+tire 树

    题目 [题目描述] 由于你成功地在 $ \text{1 s} $ 内算出了上一题的答案,英雄们很高兴并邀请你加入了他们的游戏.然而进入游戏之后你才发现,英雄们打的游戏和你想象的并不一样…… 英雄们打的 ...

  5. dorado 常用

    如果要设置模糊查询, 一般要在QueryCommand中这样写: var name = dsQuery.getValue("NAME"); var parameters = com ...

  6. 从输入URL到浏览器显示页面

    去看经典是不会错的,如果觉得太长,那就休息一下继续看. 经验告诉我,读一篇经典足矣,不要浪费时间去搜索其他地方到处复制粘贴的博文. 所以奉上我过滤的经典: 1.How browser work 2.h ...

  7. Luogu P2183 [国家集训队]礼物 扩展卢卡斯+组合数

    好吧学长说是板子...学了之后才发现就是板子qwq 题意:求$ C_n^{w_1}*C_{n-w_1}^{w_2}*C_{n-w_1-w_2}^{w_3}*...\space mod \space P ...

  8. A^B mod (大数运算)

    #include<iostream> #include<cstdio> #include<cstring> using namespace std; ; ; cha ...

  9. ASP.NET Core模块化前后端分离快速开发框架介绍之4、模块化实现思路

    源码 GitHub:https://github.com/iamoldli/NetModular 演示地址 地址:https://nm.iamoldli.com 账户:admin 密码:admin 前 ...

  10. pat1079. Total Sales of Supply Chain (25)

    1079. Total Sales of Supply Chain (25) 时间限制 250 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHE ...