Nuxt 元素id值设为动态的值,但无法通过这个值来获取该元素,我应该如何做才能通过id值获得该元素?
在 components 中无法取得该元素,在 pages 中可以取得
全部的代码示例 :
https://codesandbox.io/s/craz...
简单的代码示例 :
<template>
<section>
<div id="app">
<h1>{{ message }}</h1>
<button :id="domId">get my id is {{ domId }}</button>
<pre>
{{ consol }}
</pre>
</div>
</section>
</template>
<script>
export default {
data() {
var domId = Date.now();
return {
message: "Welcome to Nuxt!",
consol: "",
domId: domId,
};
},
mounted() {
console.log(
`我想获得id值为${this.domId}的元素,但总是获得null,我应该如何做?` );
// 此处可以输出正常值
console.log(`this.domId`, this.domId);
// 这里输出 null
console.log(
`document.getElementById(${this.domId})`,
document.getElementById(this.domId)
);
},
};
</script>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
试试 this.$nextTick , 例 :
或者
将
elemId
换成domId
就行了。document.getElementById(this.domId)
一个你的变量名用错了,另外一个你可以用
refs
注册,然后直接用refs
来获取dom
示例。