我正在尝试从Vue组件中的dom访问元素,但是我只是获得了'null'。如果我进入开发工具并尝试,我可以访问它。我假设这是一个范围问题,但是我找不到答案。
<template>
<ul class="list-group" id="criteria" v-for="item in criteria">
<li class="list-group-item">{{ item.name }}</li>
</ul>
</template>
<script>
export default {
template: "report-criteria",
data() {
return {
criteria: []
}
},
ready() {
console.log(document.getElementById('criteria'));
},
methods: {},
};
</script>
有人可以帮忙吗?
VueJS 1.x
使用v-el
指令可能会更容易,该指令允许您将组件中的元素映射到上的vm属性this.$els
。
另外,对于AFAIK,您不应将template
属性与.vue
文件中的模板结合使用.vue
(当然,假设您正在使用文件)。
<template>
<ul class="list-group" id="criteria" v-el:criteria v-for="item in criteria">
<li class="list-group-item">{{ item.name }}</li>
</ul>
</template>
<script>
export default {
data() {
return {
criteria: []
}
},
ready() {
console.log(this.$els.criteria);
},
methods: {},
};
</script>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句