当前位置:   article > 正文

vue3如何动态添加组件到dom中(jsx,h(),render)_vue动态添加dom元素

vue动态添加dom元素

背景,在写自定义指令的时候遇见,需要把svg图标组件动态添加到div中,然后把方法绑定到图标上

1、创建jsx

  1. import IconSvg from "@/components/IconSvg/IconSvg.vue";
  2. const renderDom = () => {
  3. return (
  4. <IconSvg class="iconf" svg-name="wh-if-papers" ref="elsvg" />
  5. )
  6. }
  7. export default renderDom;

2、使用

  1. import { h, render } from 'vue'
  2. import renderDom from "./copy-icon"
  3. //取一段代码 el:dom元素
  4. const iconCopy = h(renderDom, { onClick: () => copyHandleClick(el.innerText), style: { cursor: 'copy' } })
  5. console.log("动态组件", iconCopy)
  6. render(iconCopy, el)

效果:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/正经夜光杯/article/detail/795095
推荐阅读
相关标签
  

闽ICP备14008679号