Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(compiler): support decode all HTML entities in the value of prop and attribute (fix #8895) #11597

Closed
wants to merge 1 commit into from

Conversation

JuniorTour
Copy link
Contributor

Profit:

  1. Close Non-breaking space acts different than other characters - outputs " " in template when passed via props #8895, HTML entities in attributes are not always decoded for string templates #8805, entities in attribute are unexpectedly encoded #10121 and many issues about decoding HTML entities.
  2. Go a step further to support decoding all the HTML entities in the value of prop and attribute. Ensuring consistent behavior between Vue.js and browser. Solving the HTML entities decode issue once and for all.
  3. Optimizing the particular logic of fixing :style with multiline attribute removes root element in all versions of IE #3663 and Unicode added in HREF / SRC link (only on Chrome) #6828, simplify the code, improve the robustness.

DEMO:

Before Fix:https://jsfiddle.net/juniortour/op1L4z3s/

After Fix:https://jsfiddle.net/juniortour/qg9pwz7v/


What kind of change does this PR introduce? (check at least one)

  • Bugfix
  • Feature
  • Code style update
  • Refactor
  • Build-related changes
  • Other, please describe:

Does this PR introduce a breaking change? (check one)

  • Yes
  • No

If yes, please describe the impact and migration path for existing applications:

The PR fulfills these requirements:

If adding a new feature, the PR's description includes:

  • A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

Other information:

@JuniorTour JuniorTour closed this Aug 15, 2020
@JuniorTour JuniorTour deleted the support-decode-enitity branch August 16, 2020 02:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Non-breaking space acts different than other characters - outputs " " in template when passed via props
1 participant