• 3
  • 新人请关照

vue如何运行时加载模版,且调用新创建组件

目的:想利用字符串的模版加上slot实现动态表单。
构建form.js:

render(h){

let layout = h({
  name:'layout',
  template:'<div class="layout"><slot></slot></div>'
  });
  let child = h({
    name:'child',
    template:'<a href="javascript:void(-1)">666</a>'
  });
  let c = h({
      name:'c',
      template:'<layout><child></child></layout>',
      components:{layout,child}
    });
  return c

}
运行出错,请问如何更改?
图片描述

图片描述

如果单独返回child 成功,请问为什么?怎么调用多个引用组件?作用域的问题?
期待您的答案,谢谢!

阅读 2k
评论 2017-11-15 提问
    1 个回答
    • 3
    • 新人请关照
    1. let child = {name:'child',template:'<div><label>child:</label><input
      value="ddd"></input></div>'};

    2. let tp = {name:'tp',template:'<div class="layout">9999:<slot
      name="sss"></slot></div>'};

    3. let view = {name:'tpz',template:'<div><tp><child

         slot="sss"></child></tp></div>',components:{tp,child}};
    4. return h(view)

    这种demo可以实现

      撰写回答

      登录后参与交流、获取后续更新提醒