zoukankan      html  css  js  c++  java
  • vue 动态创建组件(运行时创建组件)

      function mountCmp (cmp, props, parent) {
        if (cmp.default) {
          cmp = cmp.default
        }
        cmp = Vue.extend(cmp)
        let node = document.createElement('div')
        parent.appendChild(node)
        new cmp({ // eslint-disable-line
          el: node,
          propsData: props,
          parent: this
        })
      }
    
          import('../components/title').then(cmp => {
            mountCmp.call(this, cmp, {title: 123456}, document.querySelector('.child-host'))
            mountCmp.call(this, cmp, {title: 123456}, document.querySelector('.child-host'))
          })
       

    //title.vue

    <template>
        <div class="title">
          <div class="title-icon"></div>
          <div class="title-txt">{{title}}</div>
          <div class="title-dotline">&nbsp;</div>
        </div>
    </template>
    
    
    <script>
    export default {
      props: ['title']
    }
    </script>

    function mountCmp (cmp, props, parent) {
    cmp = Vue.extend(cmp.default)
    let node = document.createElement('div')
    parent.appendChild(node)
    new cmp({ // eslint-disable-line
    el: node,
    propsData: props,
    parent: this
    })
    }
  • 相关阅读:
    Array.from和 map的相同用法
    js复制数组的各种方式
    set集合转数组的两种方法
    关于set集合去重的问题
    Object.is判断两个值是否相等
    数组排序
    函数默认值的取值
    标准索引
    pgsql update left join
    linux pgsql
  • 原文地址:https://www.cnblogs.com/zyip/p/8192753.html
Copyright © 2011-2022 走看看