[url]http://uh.9ria.com/space-12147-do-blog-id-660.html[/url]
两个组件,定义了同名的CSS,不管你是用什么方式定义的,是导入外部CSS,<Style>里写,CSSStyleDeclaration,
下次你再定义这玩意就没效果了,还是用的原来的那个,就算是不同的组件定义的。
恩,所以CSS是全局的。
当然,不同组件,设置不同的CSS名称就可以,我要说的是,这同时也说明,关闭组件并不会销毁CSS定义,这东西是内存泄露……
因此,务必在组件的remove事件中去掉CSS,可是- -如果是一个组件有多个实例同时显示,实在难以判断是否所有组件都已经remove,而提前去掉CSS必然产生显示异常。
如果有必要的话,尽可能不要在组件内设置CSS。
setStyle这类方式也很有可能有类似的内存泄露问题,这个再看吧。
两个组件,定义了同名的CSS,不管你是用什么方式定义的,是导入外部CSS,<Style>里写,CSSStyleDeclaration,
下次你再定义这玩意就没效果了,还是用的原来的那个,就算是不同的组件定义的。
恩,所以CSS是全局的。
当然,不同组件,设置不同的CSS名称就可以,我要说的是,这同时也说明,关闭组件并不会销毁CSS定义,这东西是内存泄露……
因此,务必在组件的remove事件中去掉CSS,可是- -如果是一个组件有多个实例同时显示,实在难以判断是否所有组件都已经remove,而提前去掉CSS必然产生显示异常。
如果有必要的话,尽可能不要在组件内设置CSS。
setStyle这类方式也很有可能有类似的内存泄露问题,这个再看吧。
本文探讨了CSS在不同组件间的作用域问题,指出CSS具有全局特性,即使组件被关闭,其定义的样式也不会自动移除,可能导致内存泄露。建议在组件卸载时清理CSS,并避免在组件内部直接设置样式。
5853

被折叠的 条评论
为什么被折叠?



