2.5.17
https://codepen.io/avertes/pen/LYYpNRe
https://jsfiddle.net/50wL7mdz/756973/
рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рдПрдХ рдЧреИрд░ рдмреНрд░реЗрдХрд┐рдВрдЧ рд╕реНрдкреЗрд╕ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
рдЖрдЙрдЯрдкреБрдЯ
рджрд┐рдЦрд╛рддрд╛ рд╣реИ
рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдореИрдВрдиреЗ 3 рдорд╛рдорд▓реЗ рдмрдирд╛рдП рд╣реИрдВ
 
NON-BREAKING SPACE
рдмрдЪ рдЧрдП рд╣реИрдВредdocument.querySelector('#test').title
рд╕рд╛рде рдЗрд╕реЗ рдПрдХ рдирд┐рдпрдорд┐рдд HTMLElement
рд╕реЗ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдЪрд░рд┐рддреНрд░ рдмрдЪ рдирд╣реАрдВ рд░рд╣реЗ рд╣реИрдВредрдиреЛрдЯ : рдиреЙрди-рдмреНрд░реЗрдХрд┐рдВрдЧ рд╕реНрдкреЗрд╕ рдХреИрд░реЗрдХреНрдЯрд░ рдХреЛ рдХреЙрдкреА рдХрд░рддреЗ рд╕рдордп рдпрд╣ рдХреНрд▓рд┐рдкрдмреЛрд░реНрдб рдореЗрдВ рдПрдХ рдирд┐рдпрдорд┐рдд рд╕реНрдкреЗрд╕ рдореЗрдВ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП https://en.wikipedia.org/wiki/Non-breaking_space#Keyboard_entry_methods рдХрд╛ рдЙрдкрдпреЛрдЧ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░реЗрдВ рдХрд┐ рдЪрд░рд┐рддреНрд░ рдХреИрд╕реЗ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░реЗрдВред
рдореИрдВрдиреЗ рдПрдХ рдирдпрд╛ рдЙрджрд╛рд╣рд░рдг рдЬреЛрдбрд╝рд╛ рд╣реИ - рдЬрд╣рд╛рдВ html рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдореЗрдВ (рдЕрдиреНрдп рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдФрд░ рд╢реВрдиреНрдп рдЪреМрдбрд╝рд╛рдИ рд╡рд░реНрдгреЛрдВ рд╕рд╣рд┐рдд) - рдХреЗрд╡рд▓
рдбрд┐рдХреЛрдб рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВрдиреЗ рджреЗрдЦрд╛ рд╣реИ рдХрд┐ mathiasbynens рдореЗрдВ / рд╡рд╣
рд▓рд┐рдП рджреЛ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдБ рд╣реИрдВ, рд╕рд┐рдорд┐рдХреЛрд▓рди рдХреЗ рдмрд┐рдирд╛ рдФрд░ рд╕рд┐рдорд┐рдХреЛрд▓рди рдХреЗ рд╕рд╛рде рдПрдХред
рдЕрдВрдзреЗрд░реЗ рдореЗрдВ рдПрдХ рд╢реЙрдЯ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдЗрд╕рд╕реЗ рдКрдкрд░ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдкрд░ рдХреЛрдИ рдкреНрд░рднрд╛рд╡ рдкрдбрд╝ рд╕рдХрддрд╛ рд╣реИ?
рдореИрдВрдиреЗ
рд╕рд╛рде рдХрд┐рд╕реА рднреА рд╡рд┐рд╕рдВрдЧрддрд┐ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП mathiasbynens / he v1.1.1 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ, рд▓реЗрдХрд┐рди рдХреЛрдИ рднреА рдЦреЛрдЬрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИред
рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдкрд┐рдЫрд▓реЗ jsfiddles рдХреЛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ, рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛
рдХрд┐рд╕реА рднреА рдЕрд▓рдЧ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╣реЛрдЧреАред
рдЕрдЧрд░ рдХреЛрдИ рдореБрдЭреЗ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЗ рд▓рд┐рдП рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдВрдХреЗрдд рджреЗ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдореИрдВ рдЗрд╕реЗ рд╢реЙрдЯ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдЦреБрд╢ рд╣реВрдВред
рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХрд┐рд╕реА рднреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдмрд╣реБрдд рд╕рд░рд╛рд╣рдирд╛ рдХрд░реВрдВрдЧрд╛ред
рдореЗрд░реЗ рд▓рд┐рдП рдПрдХ рдмрдЧ рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ - рдПрдХ рдлрд┐рдХреНрд╕ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛
Ive рдиреЗ рдореМрдХреЗ рдкрд░ ×
рд╕рд╛рде рдореБрджреНрджреЛрдВ рдкрд░ рдзреНрдпрд╛рди рджрд┐рдпрд╛ред рдПрдХ рдШрдЯрдХ рдкреНрд░реЛрдк рдореЗрдВ ×
рдХрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдШрдЯрдХ (v-html) рдореЗрдВ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬрдм рдпрд╣ рдкреНрд░рддрд┐рдкрд╛рджрди рд╡рд╛рд╕реНрддрд╡рд┐рдХ x
рд╡рд░реНрдг рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдФрд░ SSR рдЬрд▓рдпреЛрдЬрди рдЬрдорд╛рдирдд рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИред
рдЕрдиреНрдп рдЙрджрд╛рд╣рд░рдг: https://jsfiddle.net/onbzk0m6/ (рдЪрд░рд┐рддреНрд░)
рд╣рд╛рдБ - рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ Vue parses html рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред
рдореИрдВрдиреЗ @approached рдЙрджрд╛рд╣рд░рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рд╕рдорд╛рди рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рдпрд╛ рд╣реИ
https://jsfiddle.net/onbzk0m6/3/
рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреЗ рд░реВрдк рдореЗрдВ,
- \xa0
рдХреЗ рд▓рд┐рдП JS рдПрд╕реНрдХреЗрдк рдХреЛрдб рдбрд╛рд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ
рдпрд╣рд╛рдБ рдкрд╛рдпрд╛
public static noBreakingSpaces(str: string): string {
return str.replace(' ', '\xa0');
}
рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рджрд┐рдП рдЧрдП рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЗ рдмрдЬрд╛рдп  
s рдХреЗ рд╕рд╛рде рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред
рдореИрдВ рдПрдХ рд╣реА рдореБрджреНрджреЗ рдкрд░ рдареЛрдХрд░ рдЦрд╛рдИ: html рдЗрдХрд╛рдИ рдкрд░рд┐рдгрд╛рдо рдореЗрдВ "" рдкрд╛рда рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рджреЗрддрд╛ рд╣реИ рдЬрдм рдирд░рдо рд╣рд╛рдЗрдлрд╝рди рдХреЗ рдмрдЬрд╛рдп рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред "" рдФрд░ рдЕрдиреНрдп рдХреЗ рд▓рд┐рдП рд╕рдорд╛рдиред
рд╡реНрд░рдд реи.рем.резреж
рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдвреВрдВрдв рд░рд╣реЗ рд╣реИрдВ:
рдЬрдм рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рдЧреИрд░-рдмреНрд░реЗрдХрд┐рдВрдЧ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЗ рд╕рд╛рде рдПрдХ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдореИрдВрдиреЗ рдХреЗрд╡рд▓ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рднрд╛рдЧ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╡рд╛рд▓реЗ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЛ рдмрджрд▓ рджрд┐рдпрд╛ рд╣реИ, рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ 'zzz'
var newName = program_name.replace(/\s/g,'zzz');
рдлрд┐рд░, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдШрдЯрдХ рдореЗрдВ, рдЬрд╣рд╛рдВ рдореБрдЭреЗ рдЗрд╕ рдкреНрд░реЙрдк рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдпрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдЧрдгрдирд╛ рдХрд╛рд░реНрдп рд╣реИ рдЬреЛ рдЙрдкрд░реЛрдХреНрдд рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЛ рдЕрдирдкреЛрдЬрд╝ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкреНрд▓реЗрд╕рд╣реЛрд▓реНрдбрд░ рдЪрд░ рдХреЛ рдлрд┐рд░ рд╕реЗ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЗ рд╕рд╛рде рдмрджрд▓ рджреЗрддрд╛ рд╣реИ
correctedProgramName(){ //this reverses the space-replacing we had to do in reporting-dashboard.js
let correctedProgramName = this.program_name.replace(/zzz/g, ' ')
return correctedProgramName
}
@posva рдЖрдкрдХреЛ рдкрд░реЗрд╢рд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореБрдЭреЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╣рд▓ рдорд┐рд▓ рдЧрдпрд╛ред
рдореЗрд░реЗ рдлрд┐рдХреНрд╕ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, Vue рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ HTML рдЬреИрд╕рд╛ рд╣реА рд╣реЛрдЧрд╛, рдиреАрдЪреЗ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдХреА рддрд░рд╣,
рдХреНрдпрд╛ рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЙрдард╛ рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ рдПрдХ рдирд┐рд╡реЗрджрди рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ?
рдЬрд░реВрд░ @JuniorTour
рдпрд╣ рд╕рдорд╕реНрдпрд╛ https://github.com/vuejs/vue/issues/10485 рдФрд░ https://github.com/vuejs/vue/issues/11059 рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛ рд╕рдХрддреА рд╣реИ
рддреЛ рдпрд╣ рдореМрдЬреВрджрд╛ PRs рдкрд░ рднреА рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреЗ рд░реВрдк рдореЗрдВ,
-\xa0
рдХреЗ рд▓рд┐рдП JS рдПрд╕реНрдХреЗрдк рдХреЛрдб рдбрд╛рд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВрдпрд╣рд╛рдБ рдкрд╛рдпрд╛
рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рджрд┐рдП рдЧрдП рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЗ рдмрдЬрд╛рдп
 
s рдХреЗ рд╕рд╛рде рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред