首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在HTMLElement模板中呈现现有的vue3

在HTMLElement模板中呈现现有的vue3
EN

Stack Overflow用户
提问于 2022-10-18 12:49:57
回答 1查看 79关注 0票数 0

假设我有一个现有的htmlElement:const myElement = document.createElement('DIV');,我希望这个实例是vue3模板中的呈现器。

使用复合API,它看起来应该如下所示:

代码语言:javascript
复制
<template>
     <MyElement></myElement>
</template>
<script setup>
   const MyElement = document.createElement('DIV');
</script>

有人知道我能不能做到这样的事吗?

我的具体需求是以这种方式在vue3中使用三个is:

代码语言:javascript
复制
<template>
     <renderer.domElement></renderer.domElement>
</template>
<script setup>
   import { WebGLRenderer } from 'three';
   const renderer = new WebGLRenderer();
   [...]
</script>

而不是做这样的事情:

代码语言:javascript
复制
<template>
     <canvas ref="canvasRef"></canvas>
</template>
<script setup>
   import { onMounted, ref } from 'vue';
   import { WebGLRenderer } from 'three';
   const canvasRef = ref(null);
   const renderer = new WebGLRenderer();
   onMounted(async () => {
  const renderer = new WebGLRenderer({
    canvas: canvasRef.value as HTMLCanvasElement,
  });
});
</script>

->作为WebGLRenderer实例已经包含了一个现有的HTMLCanvasElement (renderer.domElement),在我的例子中,如果可以在组件挂载之前声明渲染器,那将是非常有用的!

我尝试过jsx/render函数,我目前正在查看vue3自定义呈现器(但我不确定重载现有呈现器是否是一个好的解决方案.)

EN

回答 1

Stack Overflow用户

发布于 2022-10-18 20:48:22

对于注入元素,可以使用v-html或任何讨论过的here方式。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74111270

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档