抱歉,您的浏览器无法访问本站

本页面需要浏览器支持(启用)JavaScript


了解详情 >

  最近在一家公司实习,这家公司的代码比我上一家强多了,当然也就存在很多我看不懂的地方,感觉自己好像愈发小白了。真是望洋兴叹啊。今天看到一个代码在方法中改了数据,页面就随之重新渲染了,但是我搜索变量名,发现这个数据并没有直接和html中的标签绑定,这时我就很困惑了,这个渲染出来的html到底写在哪里呢?

  问了公司的前辈才知道,只要改动了data()里的数据,vue的组件就会重新渲染。就算这个数据没有直接和标签绑定也会。像我遇到的这种情况,就是在v-if里面写了个方法,然后方法里才用到了那个数据。所以其实是因为data()(在这里其实是setup)里面的数据更改了,导致vue组件重新渲染,触发v-if中的方法,最终渲染出内容。

  vue使用diff算法避免重复渲染,比如一个表格中你只修改了一行的数据,那么就只渲染那一行。

评论