Vaadin-combo-box: рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рдХреЙрдореНрдмреЛ рдмреЙрдХреНрд╕ рдЖрдЗрдЯрдо

рдХреЛ рдирд┐рд░реНрдорд┐рдд 28 рдорд╛рд░реНрдЪ 2019  ┬╖  8рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: vaadin/vaadin-combo-box

рдореИрдВ рдХреЙрдореНрдмреЛ рдмреЙрдХреНрд╕ рдЖрдЗрдЯрдо рдореЗрдВ рдмрд╛рд╣рд░реА рд╢реИрд▓рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдЗрдЯрдо рдЫрд╛рдпрд╛ рдбреЛрдо рдХреЗ рднреАрддрд░ рд╣реИрдВред

рдзреНрд╡рдЬ-рдЖрдЗрдХрди-рд╕реАрдПрд╕рдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рднрд╛рд╖рд╛ рдЪрдпрди рдХреЙрдореНрдмреЛ рдмреЙрдХреНрд╕ рдореЗрдВ рдзреНрд╡рдЬ рдЪрд┐рд╣реНрди рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдареЛрд╕ рдкрд░рд┐рджреГрд╢реНрдп рд╣реИред рдЭрдВрдбреЗ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдзреНрд╡рдЬ-рдЖрдЗрдХрди-рд╕реАрдПрд╕рдПрд╕ рд╢реИрд▓рд┐рдпреЛрдВ рд╕реЗ рдХреБрдЫ рд╕реАрдПрд╕рдПрд╕ рд╡рд░реНрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕реНрдкреИрди рдЯреИрдЧ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЫрд╛рдпрд╛ рдбреЛрдо рдХреЗ рдХрд╛рд░рдг рдЙрдиреНрд╣реЗрдВ рдЙрдард╛рдпрд╛ рдирд╣реАрдВ рдЬрд╛рддрд╛ рд╣реИред рд▓рд┐рд╕реНрдЯрдмреЙрдХреНрд╕ рдореЗрдВ рдХреЙрдореНрдмреЛ рдмреЙрдХреНрд╕ рдЖрдЗрдЯрдо "рд╕реНрд▓реЙрдЯ" рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП? рд▓рд┐рд╕реНрдЯрдмреЙрдХреНрд╕ рдЖрдЗрдЯрдо рдХреЗ рд▓рд┐рдП рдпрд╣ рдзреНрд╡рдЬ рдЪрд┐рд╣реНрди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдореИрдВрдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд╕реНрдЯреИрдХрдУрд╡рд░рдлреНрд▓реЛ рдкрд░ рдПрдХ рдкреНрд░рд╢реНрди рдЦреЛрд▓рд╛ рд╣реИ, рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП https://stackoverflow.com/questions/55170886 рджреЗрдЦреЗрдВред

рд╕рднреА 8 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдХреНрдпрд╛ рдХреЛрдИ рдЙрдкрд╛рдп рдЙрдкрд▓рдмреНрдз рд╣реИ?

рдЪреВрдВрдХрд┐ рдмрд╛рд╣рд░реА рд╢реИрд▓рд┐рдпрд╛рдБ рдЫрд╛рдпрд╛ DOM рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдирд╣реАрдВ рдХрд░рддреА рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ CSS рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЫрд╛рдпрд╛ DOM рдХреЗ рдЕрдВрджрд░ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╢рд╛рдпрдж рдпрд╣ рд╕реНрдЯреИрдХ рдУрд╡рд░рдлреНрд▓реЛ рдереНрд░реЗрдб рдорджрдж рдХрд░рддрд╛ рд╣реИред

рдЙрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рджреВрд╕рд░реЗ рдЙрддреНрддрд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, <link rel="stylesheet"> рдЫрд╛рдпрд╛ рдбреЛрдо рдХреЗ рдЕрдВрджрд░ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рддреЛ рдРрд╕рд╛ рдХреБрдЫ рдЖрдкрдХреЗ ComponentRenderer рдореЗрдВ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ:

Element link = new Element("link");
link.setAttribute("rel", "stylesheet");
link.setAttribute("href", "./frontend/bower_components/flag-icon-css/css/flag-icon.min.css");
item.getElement().appendChild(link);

...рдпрд╛ рдкрд╣рд▓реЗ рдЙрддреНрддрд░ рдореЗрдВ рд╕реБрдЭрд╛рдП рдЧрдП @import рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛:

Element style = new Element("style");
style.setProperty("innerHTML", "<strong i="15">@import</strong> \"./frontend/bower_components/flag-icon-css/css/flag-icon.min.css\"");
item.getElement().appendChild(style);

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВрдиреЗ рдЦреБрдж рдЗрди рд╕реНрдирд┐рдкреЗрдЯреНрд╕ рдХрд╛ рдареАрдХ рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред

@ рд╕реНрдЯреАрдлрди-рд╣рд╛рд░реНрдмрд┐рдЪ-рдЖрдИрдЯреАрд╕реА, рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЙрди рддрд░реАрдХреЛрдВ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рддрд░реАрдХреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд┐рдпрд╛? рдореБрдЭреЗ рд╕реБрдирдиреЗ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реЛрдЧреАред :)

рдореИрдВрдиреЗ рдЖрдкрдХреЗ рджреВрд╕рд░реЗ рд╕реБрдЭрд╛рд╡ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдпрд╣ рдХрд╛рдо рдХрд░ рдЧрдпрд╛ ред рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХреАред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВрдиреЗ рдЕрдкрдиреЗ рд╕рд╛рдЭрд╛-styles.html in . рдореЗрдВ " @import ..." рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛

 <dom-module id="my-combo-box-theme" theme-for="vaadin-combo-box">
   <template>
     <style>...

рд▓реЗрдХрд┐рди рд╡рд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ред

рддреЛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╛рдзрд╛рди рдЙрдкрд▓рдмреНрдз рд╣реИ рд▓реЗрдХрд┐рди IMO рдЕрднреА рднреА ListItems рдХреЗ рд╡рд┐рдкрд░реАрдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдЕрд╕рдВрдЧрдд рд╣реИред

рдпрд╣ рд╕реБрдирдХрд░ рдЕрдЪреНрдЫрд╛ рд▓рдЧрд╛ рдХрд┐ рдХрдо рд╕реЗ рдХрдо рдПрдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ!

рдЖрдкрдХреЗ рд╕рд╛рдЭрд╛-рд╢реИрд▓реА рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ: рдЖрдкрдХреЛ theme-for="vaadin-combo-box-item" рд╕реЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣реА рд╡рд╣ рддрддреНрд╡ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдЕрднреА рднреА ComponentRenderer рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд░реЗрдВрдбрд░рд░ vaadin-combo-box-item рдФрд░ рдЖрдкрдХреЗ рдЬреЛрдбрд╝реЗ рдЧрдП рдШрдЯрдХреЛрдВ рдХреЗ рдмреАрдЪ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡реЗрдм рдШрдЯрдХ (рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЫрд╛рдпрд╛-рд░реВрдЯ) рдмрдирд╛рддрд╛ рд╣реИред

рд╡рд╕реНрддреБрдУрдВ рдХреА рд╢реИрд▓реАрдЧрддрддрд╛ рдФрд░ рдЪрд╛рд╣реЗ рд╡реЗ рдЫрд╛рдпрд╛ рдХреЗ рдЕрдВрджрд░ рд╣реЛрдВ рдпрд╛ рдирд╣реАрдВ, рдбреЛрдо рд╡реЗрдм рдШрдЯрдХ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ (рдЗрд╕ рднрдВрдбрд╛рд░ рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдЬрд╛рд╡рд╛ рд░реИрдкрд░ рд╢рд╛рдорд┐рд▓ рд╣реИ), рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕ рдЯрд┐рдХрдЯ рдХреЛ рд╡рд╛рдбрд┐рди-рдХреЙрдореНрдмреЛ-рдмреЙрдХреНрд╕ рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдореЗрдВ рд▓реЗ рдЬрд╛рдКрдВрдЧрд╛ред

рдЗрд╕реЗ рд╕рдВрднрд╛рд▓рдиреЗ рдХрд╛ рдПрдХ рд╕рд╣реА рддрд░реАрдХрд╛ рдЗрд╕ рддрд░рд╣ рд╕реЗ dom-module рд╣реЛрдЧрд╛:

<dom-module id="my-item-css" theme-for="vaadin-combo-box-item">
  <template>
    <style>
    /* styles from flag-icons.css */
    </style>
  </template>
</dom-module>

@import рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рд╣реИ рдФрд░ рдЗрд╕рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИред

рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХреЛрдИ рдЖрд╕рд╛рди рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ, рдФрд░ рдпрд╣ vaadin-combo-box рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИред
рд╣рдореЗрдВ рдирдИ рдбреЙрдХреНрд╕ рд╕рд╛рдЗрдЯ рдореЗрдВ рдЫрд╛рдпрд╛ рдбреЛрдо рдФрд░ рдмрд╛рд╣рд░реА рд╕реАрдПрд╕рдПрд╕ рдХреА рд╕реАрдорд╛рдУрдВ рдХрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬреАрдХрд░рдг рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдирд╣реАрдВ рддреЛ рд╣рдорд╛рд░реЗ рдпрд╣рд╛рдБ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдирд╣реАрдВ рд╣реИред рддреЛ рдореБрдЭреЗ рдЗрд╕реЗ рдмрдВрдж рдХрд░рдиреЗ рджреЗрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХреЛрдИ рдмрдЧ рдирд╣реАрдВ рд╣реИред

рдореИрдВ рдЕрднреА рднреА рдЙрдореНрдореАрдж рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдХреЙрдореНрдмреЛ рдмреЙрдХреНрд╕ рдЖрдЗрдЯрдо рдХреЛ рдЫрд╛рдпрд╛ рдбреЛрдо рдХреЗ рднреАрддрд░ рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рдЕрд▓рдЧ рд╕реНрд▓реЙрдЯ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдХреЙрдореНрдмреЛ рдмреЙрдХреНрд╕ рдЖрдЗрдЯрдо рдХреЛ рдЫрд╛рдпрд╛ рдбреЛрдо рдХреЗ рднреАрддрд░ рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рдЕрд▓рдЧ рд╕реНрд▓реЙрдЯ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╣рдо рдЗрд╕реЗ рдЕрдЧрд▓реА рдмрдбрд╝реА рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рдмреНрд░реЗрдХрд┐рдВрдЧ рдмрджрд▓рд╛рд╡ рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рди рд╕рдХрддреЗ рд╣реИрдВред

рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдЦреБрд▓рд╛рд╕рд╛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╡реЗ рд╡рд░реНрдЪреБрдЕрд▓ рд╕реНрдХреНрд░реЛрд▓рд░ рдШрдЯрдХ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ (рдЬрд┐рд╕реЗ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ iron-list рд╕реЗ рдХреБрдЫ рдФрд░ рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ - рддрдп рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИ)ред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

joostdebruijn picture joostdebruijn  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

florent1933 picture florent1933  ┬╖  14рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

web-padawan picture web-padawan  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mas4ivv picture mas4ivv  ┬╖  16рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

davidmaxwaterman picture davidmaxwaterman  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ