Closed mark-hahn closed 9 years ago
It occurs to me that this also means the DOM is much bigger than it needs to be which is a performance issue. I have an array of about 1000 objects passed to a lot of components and it creates an enormously long attribute value in a number of places in the DOM.
What version of Vue are you using?
0.12.7
This has been happening for at least a month: #185
That's weird, all props and directives should be removed after compilation. I've never seen this before... maybe something to do with linux Chrome?
Maybe. Can you give me some pointer on how to debug this? Like where the removal happens in your code? I've read your code and it is very clean.
On Fri, Jul 17, 2015 at 5:19 AM, Evan You notifications@github.com wrote:
That's weird, all props and directives should be removed after compilation. I've never seen this before... maybe something to do with linux Chrome?
— Reply to this email directly or view it on GitHub https://github.com/yyx990803/vue/issues/1057#issuecomment-122258881.
It's removed here: https://github.com/yyx990803/vue/blob/dev/src/compiler/compile-props.js#L56
Apparently this only happens when you put an attribute in a component and then don't include that attribute in the component's props list. I can see how this happens. I assume you are just doing .toString
on all unused attributes.
So I know how to fix this now. I guess it is good for this to happen since it acts as a warning that an attribute is unused.
Does anyone know why the dev inspector in chrome would show this?
This looks to me like the vue DOM before compiling, not the running DOM. The strange part is that the code still works. I guess all the garbage attributes don't hurt anything.
This makes debugging very hard.
ubuntu 14.0.4 chrome 43.0.2357.132 (64-bit)