Upon initial observation, I immediately noticed that the exif
property lacks the ellipsis (...
) that the other properties possess. This absence suggests that this particular property does not have a getter function. Given that reactive properties all come with getters, it seems likely that this property was added after the others without using Vue.set
.
It's crucial to keep in mind that objects logged in the console are live. By hovering over the small blue "i" icon, you'll see an indication of this fact. The console doesn't create a copy of the object's properties when logging it; it only captures the property values once you expand the object in the console.
My interpretation is that the exif
property may not exist at the moment you log out the object, but it gets added before you click on the object in the console.
You can verify this by also trying to log other things, such as
console.log(JSON.stringify(file))
or
console.log(Object.keys(file))
. These additional logs should confirm that the
exif
property doesn't exist at that particular point in time.