vue弹出框显示富文本内容
方法:
// 通知公告详情noticeDetail(noticeContent) {this.noticeOpen = true;this.$nextTick(() => {document.getElementById("content").innerHTML = noticeContent;});},
踩坑:打开对话框后是空白的,第二次打开才有内容
是由于 Vue 的异步更新机制导致的内容不及时显示。Vue 使用异步更新机制来优化性能,将多次数据变更合并为一次更新,从而减少 DOM 操作次数。但有时这可能导致在更新后立即访问 DOM 元素时,DOM 尚未更新完成,导致内容无法立即显示。
为了解决这个问题,可以使用 Vue 提供的 $nextTick 方法,将 DOM 操作延迟到下一次 DOM 更新周期时执行,确保 DOM 已经更新完毕.