fix: merging issue with global local prop #86
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The intent of this PR is to address an issue when using
posthtml-include
plugin on a page with several<include />
blocks.Problem:
I noticed some values were being persisted across different includes, creating a larger
locals
object file, even though the component doesn't send any locals at all.An example to illustrate the issue:
Generated ouput:
Basically, the culprit is the
Object.assign
call here:posthtml-include/lib/index.js
Line 37 in 69789e2
The method call is basically copying
localsJson
inside the global locals object. And that is not the desired effect, I suppose.The fix was simple, I basically updated this faulty line to use object propagation to merge global locals with object scoped locals into a new object.
posthtml-include/lib/index.js
Line 37 in f46914a
Generated output:
Notes:
Object.assign
, that would have solved this problem too. Let me know if you prefer this approach instead.