实现功能:使用富文本编辑器编写文章,然后把编写成功的文章用子组件显示。

问题描述:父组件给子组件传递数据,子组件第一次调用数据的时候页面渲染是正常的,当数据变化的时候,子组件的页面渲染就失效了。

问题判断:通过一次次测试发现,第一次打开子组件的时候页面的渲染是正常的,后面打开之后渲染就失效了。所以初步怀疑是第二次调用组件的时候没有对数据进行渲染。

解决方案一:

当数据变更后,通过watch 监听,先去销毁当前的组件,然后再重现渲染。使用 v-if 可以解决这个问题

<template>
<third-comp v-if="reFresh"/>
</template> <script>
export default{
data(){
return {
reFresh:true,
menuTree:[]
}
},
watch:{
menuTree(){ this.reFresh= false
this.$nextTick(()=>{ this.reFresh = true
})
}
}
}
</script>

解决方案二:

通过vue key 实现,原理官方文档。所以当key 值变更时,会自动的重新渲染。(推荐)

<template>
<third-comp :message="menuData" :key="menuKey"/>
</template> <script>
export default{
data(){
return {
menuKey:1,
      menuData: "", 
}
},
watch:{
menuData(){
++this.menuKey
}
}
}
</script>

vue 强制刷新组件重新渲染的更多相关文章

  1. vue强制刷新组件 ----组件重置到初始状态

    把一个组件重置到初始状态是一个常见的需求,推荐的做法有两种,一种是父组件重置子组件的 prop,另一种是子组件暴露一个重置的方法供父组件调用.但有些时候,子组件既没有提供重置的方法,也没提供 prop ...

  2. vue强制刷新组件

    <component v-if="hackReset"></component>(组件名称) data:hackReset (事件执行) this.hack ...

  3. vue 强制刷新组件

    <component v-if="hackReset"></component> 2 3 4 this.hackReset = false this.$ne ...

  4. vue在窗口大小改变时强制刷新组件的方法

    mounted () { window.onresize = () => { return (() => { this.$forceUpdate(); })() } }

  5. vue 强制刷新 demo 神器

    this.$forceUpdate() /*关键句,强制更新dom*/

  6. vue 时间选择器组件

    vue 时间选择器组件 组件效果: 单文件组件: <template> <div class="date-pickers"> <!--date为com ...

  7. vue-上拉加载、下拉刷新组件

    vue在移动端开发过程中,上拉加载.下拉刷新是页面的基本需求,现在给大家介绍一种基于touch事件封装的刷新组件. 组件支持传参.传递事件.请求成功异步回调.上拉与触底触发加载或刷新. 父子组件间的通 ...

  8. vue强制组件重新渲染

    有时候,依赖 Vue 响应方式来更新数据是不够的,相反,我们需要手动重新渲染组件来更新数据.或者,我们可能只想抛开当前的DOM,重新开始.那么,如何让Vue以正确的方式重新呈现组件呢? 强制 Vue ...

  9. vue中强制刷新的bug处理

    vue是单页面应用,跳转路由也是局部刷新,这里就拿后台管理系统而言,如果你的后台管理系统是左右布局,你不会遇到这样的问题,但是如果你的后台管理系统是上左右布局,你就会遇到这个问题,一级菜单在最上面,二 ...

随机推荐

  1. springboot开启gzip压缩

    springboot 2.x开启gzip压缩 1.application.yml配置 server: compression: enabled: true min-response-size: mim ...

  2. Tkinter 之Combobox下拉

    一.参数说明 语法 作用 cv = tk.stringVar() 绑定变量 com = ttk.Combobox(root, textvariable=cv) 创建下拉框 com.pack() 放置下 ...

  3. ArrayUtils.

    String sfck=mp.get("SFCK")==null?"":mp.get("SFCK").toString();     Str ...

  4. TCP/IP 这猝不及防的爱情

    前言 前几天看了老刘的一篇文章,TCP/IP 大明邮差.正好最近也在读<计算机自顶向下>一书 心血来潮,想写一个女版的TCP/IP 正文 一天,我正在百花会上赏花,赏着赏着,就出现了一个令 ...

  5. kafka简介&使用

    架构 几个角色概念 broker 缓存代理,Kafa集群中的一台或多台服务器统称为broker.kafka集群有多个kafka实例组成,每个实例(server)成为broker.每个类型的消息被定义为 ...

  6. 知乎面试【五轮技术+HR】

    今年下半年去知乎面试了两次,讲道理来说,知乎有CD期, 一旦上一次面试没有通过.在一段时间内,不能再次面试知乎.后来在同事的内推下,再次获得面试机会,哈哈~~,这次面试时间还是挺长的,特记录一下. 7 ...

  7. Spring Boot项目跳转不到jsp页面是怎么回事

    SpringBoot访问不了JSP但却能进入后台 一直报错: 解决方法: 改成下面的

  8. sklearn里计算roc_auc_score,报错ValueError: bad input shape

    用sklearn的DecisionTreeClassifer训练模型,然后用roc_auc_score计算模型的auc.代码如下 clf = DecisionTreeClassifier(criter ...

  9. 008-多线程-JUC集合-Queue-LinkedBlockingQueue

    一.概述 LinkedBlockingQueue是一个单向链表实现的阻塞队列.该队列按 FIFO(先进先出)排序元素,新元素插入到队列的尾部,并且队列获取操作会获得位于队列头部的元素.链接队列的吞吐量 ...

  10. 编译freeglut

    下载freeglut  http://freeglut.sourceforge.net/ 1>------ 已启动生成: 项目: CallbackMaker, 配置: Debug x64 --- ...