vue3:使用 innerHTML 时出现类型错误

问题描述 投票:0回答:0

我正在尝试在 vue 中使用 innerHTML。但得到错误:捕获(承诺)TypeError:无法设置 null 的属性(设置“innerHTML”)

这是我在 App.vue 中的代码:

data () {
return {

}

},


mounted() {

async function getData () {

var domein = 'mydomain';

  var slots = document.querySelectorAll('*[class^="prefix-"]')

  var list = '';
  for (var i = 0; i < slots.length; i++){
    
    if ('cms-' === slots[i].className.split(" ")[0].substring(0, 7)) {
    list += slots[i].className.split(" ")[0] + ',';
    }
  }

  const res = await fetch(domein + '/response.php?slots=' + list)
  const data = await res.json()

  for (var y = 0; y < data.length; y++){
  var slot = document.querySelector("*[class*=" + data[y].classname + "]")
  slot.innerHTML = data[y].content
  }
}

window.onload = function(){
getData();
};
}

}

我该如何解决这个错误?我使用了一个带有插槽和数据的 v-if。我用了 nextTick,它也没有用??我将 .innerHTML 替换为 .value,也不起作用吗?有人有什么建议吗?

vuejs3 innerhtml
© www.soinside.com 2019 - 2024. All rights reserved.