在附加元素内渲染 Vue

Posted

技术标签:

【中文标题】在附加元素内渲染 Vue【英文标题】:Render Vue inside appended element 【发布时间】:2020-02-08 15:33:34 【问题描述】:

我正在制作一些 chrome 扩展,它在 jquery 中工作,但由于一些反应性,我需要切换到 Vuejs。

现在,如果我将 Vue 绑定到某个随机 div,该 div 中的内容将被删除。

所以我尝试附加一些元素,然后使用那个元素,但似乎 Vue 找不到它。

  let el = document.createElement('div');
  el.style.cssText = 'position:fixed;top:0;left:0;';
  el.id = '#random12345';
  document.body.appendChild(el);
  setTimeout(function () 
    const app = new Vue(
      el: "#random12345",
      data: ,
      render: h => h('some-component')
    );
  , 3000);

为此,我不断收到错误消息:[Vue 警告]:找不到元素:#random12345

【问题讨论】:

【参考方案1】:

#random12345 选择器意味着它会寻找一个id 属性等于random12345 的元素。

应该是:

el.id = 'random12345';

【讨论】:

很高兴就这么简单。如果它解决了问题,请考虑将答案标记为已接受。由于这是一个错字,问题可能会被关闭。 我一直在寻找这个问题,以至于我需要自己回答:D ***.com/a/60130481/12857969

以上是关于在附加元素内渲染 Vue的主要内容,如果未能解决你的问题,请参考以下文章

在特定元素之后附加动态 vue 组件

将 Vue 对象附加到元素的最推荐语法是啥?

使用 vue 将输入元素附加到表单字段集

Vue JS 组件重新附加或缓存

使用 vue/nuxt 将样式属性附加到所有(锚)元素

为啥 Vue 渲染组件不正确?