is属性
<div id='root'>
  <table>
    <tbody>
      <row></row>
      <row></row>
      <row></row>
    </tbody>
  </table>
</div> <script>
Vue.component('row',{
  template:'<tr><td>th<row></row>is is a row</td></tr>'
})
var vm = new Vue({
  el:'#root'
})
</script>
平时我们把tr作为子组件,这个时候在渲染的时候出现了问题,tbody里面必须放tr标签,现在变成row,解析失败,这个时候要怎么解呢?
这个时候可以使用vue的is属性,必须放tr,那就tr,但可以将tr等同于某个组件
<tbody>
  <tr is='row'></tr>
  <tr is='row'></tr>
  <tr is='row'></tr>
</tbody>
这样就可以了,select-option,ul-li也是同样的解决方法
子组件定义的问题
Vue.component('row',{
data:{
content:'this is row'
},
template:'<tr><td>{{content}}</td></tr>'
})
在vue中子组件这样调用可不可以,其实是不可以的,会报错,必须是function,因为子组件不像父组件一样只被调用一次,会被调用多次,data数据是不同的,不允许共享
Vue.component('row',{
  data:function(){
    return{
      content:'this is row'
    }
  },
  template:'<tr><td>{{content}}</td></tr>'
})
所以最终要这样写
用ref操作dom
在vue里面我们不推荐操作dom,但在有些特别复杂的情况,我们还真就得操作dom
eg:获取dom内容
<div id='root'>
  <div
    ref='hello'
    @click='handleClick'
  >
    hello world
  </div>
</div> <script>
var vm = new Vue({
  el:'#root',
  methods:{
    handleClick:function(){
      console.log(this.$refs.hello.innerHTML)
    }
  }
})
</script>
eg:做一个计数器的功能
<div id='root'>
  <counter ref='one' @change='handleChange'></counter>
  <counter ref='two' @change='handleChange'></counter>
  <div>{{total}}</div>
</div> <script>
Vue.component('counter',{
  data:function(){
    return {
      number:0
    }
  },
  template:'<div @click="handleClick">{{number}}</div>',
  methods:{
    handleClick:function(){
      this.number ++;
      this.$emit('change',this.number)
    }
  }
})
var vm = new Vue({
  el:'#root',
  data:{
    total:0
  },
  methods:{
    handleChange:function(){
      this.total = this.$refs.one.number + this.$refs.two.number;
    }
  }
})
</script>

vuejs使用组件的细节点的更多相关文章

  1. 关于Vue父子组件传值(复杂数据类型的值)的细节点

    vue 父子组件传值是很常见的,多数情况下都是父传递给子的值是基础数据类型,如string,number,boolean, 当父组件值被修改时,子组件能够实时的作出改变. 如果父子传值的类型是复杂数据 ...

  2. vuejs动态组件给子组件传递数据

    vuejs动态组件给子组件传递数据 通过子组件定义时候的props可以支持父组件给子组件传递数据,这些定义的props在子组件的标签中使用绑定属性即可,但是如果使用的是<component> ...

  3. 关于“创业者与VC见面的10个不成文细节点”

    著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:Will Wang链接:http://www.zhihu.com/question/19641135/answer/50974 ...

  4. 【JAVA】高并发优化细节点

    高并发优化细节点: 微服务化 如何发现系统瓶颈?   如何高效利用有限内存: 使用基本类型 使用数组,不用集合 自定义map与数据结构   Integer—>int, Set<Intege ...

  5. vue 组件使用中的细节点

    1.is属性 有些 HTML 元素,诸如 <ul>.<ol>.<table> 和 <select>,对于哪些元素可以出现在其内部是有严格限制的.而有些元 ...

  6. VueJs(9)---组件(父子通讯)

    组件(父子通讯) 一.概括 在一个组件内定义另一个组件,称之为父子组件. 但是要注意的是:1.子组件只能在父组件内部使用(写在父组件tempalte中); 2.默认情况下,子组件无法访问父组件上的数据 ...

  7. 【Spark 深入学习 -09】Spark生态组件及Master节点HA

    ----本节内容------- 1.Spark背景介绍 2.Spark是什么 3.Spark有什么 4.Spark部署 4.1.Spark部署的2方面 4.2.Spark编译 4.3.Spark St ...

  8. CentOS7安装OpenStack(Rocky版)-02.安装Keyston认证服务组件(控制节点)

    本文分享openstack的认证服务组件keystone --------------- 完美的分割线 ---------------- 2.0.keystone认证服务 1)用户与认证:用户权限与用 ...

  9. vuejs递归组件

    vuejs学习--递归组件   前言 学习vue有一段时间了,最近使用vue做了一套后台管理系统,其中使用最多就是递归组件,也因为自己对官方文档的不熟悉使得自己踩了不少坑,今天写出来和大家一起分享. ...

随机推荐

  1. my.助战选择

    ZC:我的选项:铁扇.小白龙.北海龙女.北海龙子(涌浪).老鼠精(避敌锋芒).惠岸.银角 ZC:我的选择(日常速推不是我急需的,慢一点无所谓,我需要过难度):老鼠精(避敌锋芒).银角(首回合隐身,每回 ...

  2. std::map Intro

    #include <queue>#include <map>#include <iostream>#include <string.h> class T ...

  3. C# 反射 Type.GetFields 方法

    using System.Collections; using System.Collections.Generic; using UnityEngine; using System.Reflecti ...

  4. [转]how can I change default errormessage for invalid price

    本文转自:http://forums.asp.net/t/1598262.aspx?how+can+I+change+default+errormessage+for+invalid+price I ...

  5. Python LoggerAdpater类

    Logger子类: import logging # create loggermodule_logger = logging.getLogger('spam_application.auxiliar ...

  6. OneDrive撸5T硬盘空间教程

    注意:要注册多个账户获取网盘的,用无痕模式打开临时教育邮箱网址.打开之后不要关闭,等会用来接收验证码. 1.需要office 365注册这时候需要教育邮箱: 临时教育邮箱:http://sysu.ed ...

  7. spring的IOC和AOP详细讲解

    1.解释spring的ioc? 几种注入依赖的方式?spring的优点? IOC你就认为他是一个生产和管理bean的容器就行了,原来需要在调用类中new的东西,现在都是有这个IOC容器进行产生,同时, ...

  8. c++隐式类型转换和explicit

    什么是隐式转换? 众所周知,C++的基本类型中并非完全的对立,部分数据类型之间是可以进行隐式转换的. 所谓隐式转换,是指不需要用户干预,编译器私下进行的类型转换行为.很多时候用户可能都不知道进行了哪些 ...

  9. 保护REST API/Web服务的最佳实践

    在设计REST API或服务时,是否存在处理安全性(身份验证,授权,身份管理)的最佳实践? 在构建SOAP API时,您可以使用WS-Security作为指导,有关该主题的文献很多.我发现了有关保护R ...

  10. c#获取目录2

    // 获取程序的基目录. System.AppDomain.CurrentDomain.BaseDirectory // 获取模块的完整路径. System.Diagnostics.Process.G ...