activated

来源:1-9 Vue项目详情页 - 在项目中加入基础动画

陈立天

2020-10-26 22:32:20

# 具体遇到的问题

老师在课程中说这样可以处理这个问题,但是我不是很明白这个原理, 修改前为什么会导致这个问题,修改后为什么能解决这个问题,老师也没说..

 

修改前:
http://img.mukewang.com/climg/5f96dd8b0939af8a13500370.jpg


修改后:

http://img.mukewang.com/climg/5f96dda10967933f13390452.jpg


destroyed是什么意思


# 报错信息的截图

# 相关课程内容截图

# 尝试过的解决思路和结果

# 粘贴全部相关代码,切记添加代码注释(请勿截图)

在这里输入代码,可通过选择【代码语言】突出显示

写回答

2回答

好帮手慕夭夭

2020-10-27

同学你好,问题解答如下:

1.原因视频中老师有讲解哦,是因为路由的缓存中,去除了Detail这个组件,所以就不能触发activated 和 deactivated 。可以固定记一下:当组件在 <keep-alive> 内被切换,它的 activated 和 deactivated 这两个生命周期钩子函数才会执行。

http://img.mukewang.com/climg/5f97b6e0099e204a07010194.jpg

而mounted和destroyed是不受<keep-alive>影响的,组件有没有缓存,都可以触发。所以把activated 和 deactivated换成mounted和destroyed,页面滚动时的效果就能添加上了。

http://img.mukewang.com/climg/5f97b8550966745d04760116.jpg

2.同学理解的是对的,destroyed是销毁的意思,离开当前这个组件,此组件就会销毁。如果加了<keep-alive>缓存,那么切换到另一个组件,当前组件不会销毁。不过上面说了,缓存中去除了Detail组件,所以当离开Detail这个页面时,Detail就会销毁了。

祝学习愉快~

0

陈立天

提问者

2020-10-26

destroyed 网上查询了一下说是vue实力被销毁的时候。。  那什么时候会被销毁?? 是关闭或者跳转到另外一个页面的时候意思就这个vue实力就会被销毁了么?就执行这个destroyed 生命周期函数么? 这样理解?

0

0 学习 · 10739 问题

查看课程

相似问题

回答 2

回答 2

回答 1

回答 1