美文网首页Vue学习笔记
Vue 组件使用的细节点

Vue 组件使用的细节点

作者: puxiaotaoc | 来源:发表于2019-01-02 13:30 被阅读8次

1、is标签的使用;
2、子组件中的data必须定义为一个函数;
3、使用$refs来获取dom结点;

<!DOCTYPE html>
<html lang="en" dir="ltr">

<head>
  <meta charset="utf-8">
  <title></title>
  <script src='./vue.js'></script>
</head>

<body>
  <div id="app">
    <table>
      <tbody>
        <tr is="row"></tr>
        <tr is="row"></tr>
        <tr is="row"></tr>
      </tbody>
    </table>
  </div>

  <script>
    // 在不和H5冲突的情况下使用is标签解决组件内的bug,否则tbody中无法包含template中的tr和td
    // 在子组件里面不能直接定义对象,只能通过函数返回对象,这样多个子组件就不会互相影响了
    // 因为子组件的数据可能会被多个地方使用而不像根组件只需要一次
    Vue.component('row', {
      data: function() {
        return {
          content: 'this is content'
        }
      },
      template: '<tr><td>{{content}}</td></tr>'
    })
    var vm = new Vue({
      el: '#app',
      data: {}
    })
  </script>
</body>

</html>
<!DOCTYPE html>
<html lang="en" dir="ltr">

<head>
  <meta charset="utf-8">
  <title></title>
  <script src='./vue.js'></script>
</head>

<body>
  <div id="app">
    <counter ref='one' @change="handleChange"></counter>
    <counter ref='two' @change="handleChange"></counter>
    <div>{{total}}</div>
  </div>

  <script>
    // 使用$refs来获取dom节点
    Vue.component('counter', {
      template: '<div @click="handleClick">{{number}}</div>',
      data: function() {
        return {
          number: 0
        }
      },
      methods: {
        handleClick: function() {
          this.number++
          this.$emit('change')
        }
      }
    })
    var vm = new Vue({
      el: '#app',
      data: {
        total: 0
      },
      methods: {
        handleChange: function() {
          this.total = this.$refs.one.number + this.$refs.two.number
        }
      }
    })
  </script>
</body>

</html>

相关文章

  • Vue 组件使用的细节点

    1、is标签的使用;2、子组件中的data必须定义为一个函数;3、使用$refs来获取dom结点;

  • Vue 的构造器——extend 与手动挂载$mount

    参考资料:掘金小册 《Vue组件精讲》八九课 一、使用场景 1.常规的组件使用方式的特点: 所有内容,都是在根节点...

  • vue组件传值详解

    全局组件VS局部组件 1.全局组件全局可调用,可在一个或多个挂在了Vue实例的DOM节点内使用该组件。 2.局部组...

  • vue下使用jqwidgets组件混合开发

    jqxgrid组件下拉表头过滤自定义方案 主要提供一个在vue框架下操作dom节点,并且dom节点是vue组件生产...

  • 插槽v-slot

    父子组件插槽的使用 父组件product.vue 子组件 ProductParam.vue

  • Vue/组件

    Vue/组件 创建组件 单独声明一个Vue.component,使用只需要在Vue实例下使用定义的组件名在组件中d...

  • (17.06.21)Vue组件、组件的定义和使用、组件之间的数据

    Vue组件组件        Component     定义组件        公共的组件     使用组件  ...

  • H5踩坑记录

    flex坑 水平居中 vue坑 vue组件 vue-awesome-picker 组件的使用vue-awesome...

  • router - 2018-06-25

    2018-06-25 创建 vue异步组件技术 vue-router配置路由,使用vue的[异步组件](组件 — ...

  • 2020-12-09封装超级表格组件

    引入表单组件的封装 searchForm.vue 引入表格组件中使用 pushTable.vue中使用 这里使用...

网友评论

    本文标题:Vue 组件使用的细节点

    本文链接:https://www.haomeiwen.com/subject/dinblqtx.html