我们在开发时候,有时候也想给不同页面设置不同的背景颜色。
- 如果设置 scoped 呢,其它页面也无法设置
- 如果不设置,a 页面是红色,在 b 页面设置完蓝色,由于 Vue 是单页面应用,我们会发现 a 页面也会变成蓝色。
那么这个时候我们就可以使用生命周期法了。 代码如下:
onMounted(() => {
document
.querySelector(".wrapper")
.setAttribute(
"style",
"background: linear-gradient(90deg, #18C1ED 0%, #3495EA 50%, #2161EF 100%);"
);
});
onBeforeUnmount(() => {
document.querySelector(".wrapper").removeAttribute("style");
});
这段意思是在页面创建后设置背景颜色,同时为了防止设置之后会污染其它页面的 css,这时候只需要在页面销毁前取消设置背景颜色。
