рдмреВрдЯрд╕реНрдЯреНрд░реИрдк 4 рдХреЗ рд▓рд┐рдП рдХрд╕реНрдЯрдо рдШрдЯрдХ рдмрдирд╛рдирд╛


рдЬрдирддрд╛ рдХреА рд░рд╛рдп рдиреЗ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдХрд╛ рдЕрддреАрдд рдХреЗ рдкреМрд░рд╛рдгрд┐рдХ рдврд╛рдВрдЪреЗ рдХреА рд╢реНрд░реЗрдгреА рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рднреА рджреЗрдЦрдиреЗ рд▓рд╛рдпрдХ рд╣реИред рдмреВрдЯрд╕реНрдЯреНрд░реИрдк 4 рд╕реБрд░рдХреНрд╖рд┐рдд рд▓реЗрдЖрдЙрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рдиреЗрд╡рд┐рдЧреЗрдЯрд░ рд╣реИ, рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд, рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЗрдПрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдкрд░ HTML рдХрд╛ рдПрдХ рдирдореВрдирд╛, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рдШреЛрд╖рд┐рдд рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП HTML рдХреА рдореМрдЬреВрджрд╛ рдХреНрд╖рдорддрд╛рдУрдВ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкреНрд░рдХрдЯ рдХрд░рддрд╛ рд╣реИред


рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЛрдб рдХреИрд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛ рд░рд╣рд╛ рд╣реИ рдпрд╣ рднреА рдПрдХ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИред JQuery рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреА рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдЕрднреА рднреА рдЙрдкрдпреЛрдЧ рдореЗрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдВрд╕реНрдХрд░рдг 4 рд╕реЗ рдЗрд╕реЗ рд░реЛрд▓рдЕрдк рджреНрд╡рд╛рд░рд╛ рдкреИрдХреЗрдЬ рдореЗрдВ рд▓рдкреЗрдЯрд╛ рдЧрдпрд╛ рд╣реИ, рдмрд╛рдмреБрд▓ 6 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд┐рдП рдЧрдП ES6 рд╡рд░реНрдЧреЛрдВ рдореЗрдВред jQuery рд╢рд╛рдпрдж рдЬрд▓реНрдж рд╣реА рдирд╣реАрдВ рд╣реЛрдЧрд╛ - рдЙрд╕ рдкрд░ рдФрд░ рдмрд╛рдж рдореЗрдВ - рд▓реЗрдХрд┐рди рдЕрдм рдХреЗ рд▓рд┐рдП, рдЕрдкрдиреЗ рдЦреБрдж рдХреЗ BsMultiSelect рдкреНрд▓рдЧрдЗрди рдмрдирд╛рдиреЗ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдкрд░, Boostrap 4 рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╣реА рд╕реНрдЯреИрдХ рдкрд░, рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреА рд╡рд┐рдХрд╛рд╕ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдЦреБрд▓рд╛рд╕рд╛ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред


рдХреНрдпреЛрдВ " рд╣рд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдЕрдкрдирд╛ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП ... "


" рдХреЗрд╡рд▓ рд╕реБрдзрд╛рд░рдиреЗ рд╕реЗ рдХрд╛рдо рдмрд┐рдЧрдбрд╝ рдЬрд╛рддрд╛ рд╣реИ ред" рдпрд╣ рд╕рдордЭрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдирдП рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдХреЛ рдХреНрдпрд╛ рдорд┐рд▓рд╛, рдЗрд╕рдХреЗ рдШрдЯрдХреЛрдВ рдХреЛ рдирдП рд╕реНрдЯреИрдХ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдФрд░ рдЙрдЪреНрдЪ-рдХреНрд░рдо рд╡рд╛рд▓реЗ рдШрдЯрдХреЛрдВ рдХреЛ рдмрдирд╛рдирд╛ рдЕрдм рдХрд┐рддрдирд╛ рдЖрд╕рд╛рди рд╣реИред рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рдкреНрд░рддреАрдд рд╣реЛ рд░рд╣рд╛ рдерд╛: рдЧрдардмрдВрдзрди .form-control , .badge рдФрд░ .dropdown-menu рдФрд░ рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рдПрдХ рдмрд╣реБ ... рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред



рджреНрд╡рд╛рд░ рд╕реЗ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХрд╛ рд╕рдВрдШрд░реНрд╖


рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк BsMultiSelect рдкреНрд▓рдЧрдЗрди рд╕реАрдзреЗ рдЬреЗрдПрд╕ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк.рдЬреЗрдПрд╕ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреА рдирд┐рд░реНрднрд░рддрд╛, popper.js (рд╡реЗрдирд┐рд▓рд╛ рдкреЙрдк-рдЕрдк рдлреНрд░реЗрдорд╡рд░реНрдХ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ bootstrap.js рд╕реЗ рдбреНрд░реЙрдкрдбрд╛рдЙрди рдШрдЯрдХ рдХреЛ DOM рдореЗрдВ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рддрдерд╛рдХрдерд┐рдд рдЯреЙрдЧрд▓ рдПрд▓рд┐рдореЗрдВрдЯ рдЦреЛрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рд╡рд┐рд╢реЗрд╖ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдпрд╣ рдПрдХ рдмрдЯрди рд╣реИ рдЬреЛ рдореЗрдиреНрдпреВ рдХреЛ рдЦреЛрд▓рддрд╛ рд╣реИ), рдпрджрд┐ рдпрд╣ рдирд╣реАрдВ рдорд┐рд▓рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдПрдХ рдПрд░рд░ рдХреЗ рд╕рд╛рде рдХреНрд░реИрд╢ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ (рдЬрдм рд╕реЗ рдореИрдВ рд╕реАрдзреЗ js рдмрдирд╛рддрд╛ рд╣реВрдВ рддреЛ рдореЗрд░реЗ рдкрд╛рд╕ "рдмрдЯрди" рд╣реИрдВ) рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ)ред рдирд┐рд╖реНрдХрд░реНрд╖: "HTML рдУрд╡рд░ рдЬреЗрдПрд╕" рдХреЗ рддрд╣рдд рддреЗрдЬ рдХрд┐рдП рдЧрдП рдШрдЯрдХреЛрдВ рдХреЛ рдЬреЗрдПрд╕ рд╕реЗ рд╕реАрдзреЗ (рдпрд╛ рдирд┐рд╕реНрд╕рдВрджреЗрд╣) рдирд╣реАрдВ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдирд┐рд╖реНрдХрд░реНрд╖ рд╕рдВрдЦреНрдпрд╛ рджреЛ: рдЖрдкрдХреЛ рдХрд╕реНрдЯрдо рдШрдЯрдХреЛрдВ рдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ "HTML рдУрд╡рд░ рдЬреЗрдПрд╕" рдШрдЯрдХ рдХреЗ рддрд╣рдд, рд╣рдореЗрд╢рд╛ "рд╢реБрджреНрдз рдЬреЗрдПрд╕" рдХрд╛ рд╣рд▓реНрдХрд╛ рдШрдЯрдХ рд╣реЛред рдореЗрд░реЗ рдкрд╛рд╕ рдпрд╣ MulitSelect.js рди рдХреЗрд╡рд▓ рдХреЛрдб рдХреЗ рдмрд▓реНрдХрд┐ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рднреА рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдордВрдЬреВрд░реА рджреЗ рджреА рд╣реИред MulitSelect.js BsMulitSelect.js рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рднреВрдорд┐рдХрд╛ рдирд┐рднрд╛рддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ dropdown.js рдХреЗ рд▓рд┐рдП popper.js рдХрд░рддрд╛ рд╣реИред


Popper.js рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рджреЛ рд╢рдмреНрдж


рдорд╣рд╛рди рдкреБрд╕реНрддрдХрд╛рд▓рдп - рдПрдХ рд╕рдорд╛рд░реЛрд╣ред DropDown.js рджреЛрд╣рд░рд╛рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реАрдорд┐рдд рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ (рдлрд┐рд░ рд╕реЗ, рдХреНрдпреЛрдВрдХрд┐ "HTML рдУрд╡рд░ JS" рдореЗрдВ рд╕рдВрдкреВрд░реНрдг API рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ)ред рдкреЙрдкрд░ рдХреЗ рдкрд╛рд╕ рд╣рдорд╕реЗ рдЬреНрдпрд╛рджрд╛ рдЦреБрд▓рд╛ рдореБрджреНрджрд╛ рд╣реИред рдореБрдЭреЗ рдирд┐рд░рд╛рд╢рд╛ рд╣реБрдИ рдХрд┐ IE11 рдХреЗ рддрд╣рдд рдпрд╣ рдХреНрд░реЛрдо рдХреЗ рддрд╣рдд рдШрдЯрдирд╛рдУрдВ рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ ред


IIFE рд╕реЗ рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рд╕рдВрдХреНрд░рдордг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ


рдорд╛рдирдХ jQuery рдкреНрд▓рдЧрдЗрди рдмреЙрдпрд▓рд░рдкреНрд▓реЗрдЯ IIFE рдХреЗ рдЕрдВрджрд░ рдирд┐рд░реНрдорд╛рдг рдХрд╛рд░реНрдп рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред рдЕрдм рдпрд╣ IIFE рдХреЗ рдЕрдВрджрд░ рдПрдХ рд╡рд░реНрдЧ рд╣реИред рдЙрджреНрдШрд╛рдЯрди: рдИрдПрд╕ 6 рд▓реИрдореНрдмреНрдбрд╛ рдХреЗ рд╕рд╛рде рдирд┐рдЬреА рддрд░реАрдХреЛрдВ рдХрд╛ рд╕рдВрдШрд░реНрд╖ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреБрд░рд╛рдиреЗ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рддрд░реАрдХреЗ, рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдореЗрдВ "рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЧрдпрд╛"ред рд╕рднреА рд╡рд┐рдзрд┐рдпрд╛рдБ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд╣реИрдВ, рдЬрдмрдХрд┐ рдЫрджреНрдо-рдирд┐рдЬреА рд╡рд┐рдзрд┐рдпрд╛рдБ _ рдХреЗ рд╕рд╛рде рдЙрдкрд╕рд░реНрдЧ рд╣реИрдВред underscroreред рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдореИрдВ рдЧрд▓рдд рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЕрдкрдиреЗ рд╕рдореНрдореЗрд▓рдиреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддрд╛ рд╣реВрдВ - "рдмрдбрд╝реЗ рдЕрдХреНрд╖рд░ рд╡рд╛рд▓реЗ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рддрд░реАрдХреЗ"ред рдмрд╛рдХреА рд╕рднреА рдЪреАрдЬреЛрдВ рдореЗрдВ, BsMultiSelect рдиреЗ "рдорд╛рдирдХ" рдбреНрд░реЙрдкрдбрд╛рдЙрди.рдЬреЗрдПрд╕ рдХреЗ рд╕рдордЭреМрддреЗ рдХреЛ рдЕрдкрдирд╛рдпрд╛, рдЕрд░реНрдерд╛рддред рдореИрдВ рдЙрд╕реЗ рдорд╛рдВрд╕ рдХреЗ рд╕рд╛рде рдмреЙрдпрд▓рд░рдкреНрд▓реЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред


рд╣рд╛рд▓рд╛рдБрдХрд┐, рдПрдХ рдФрд░ рдЕрдВрддрд░ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╡рд╣рд╛рдБ рд░реЛрд▓рдЕрдк рд╣реИ, рдореИрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдорд╛рд░рд╛ ..
 import $ from 'jquery' import AddToJQueryPrototype from './AddToJQueryPrototype' import MultiSelect from './MultiSelect' // ... ( (window, $) => { AddToJQueryPrototype('BsMultiSelect', (element, optionsObject, onDispose) => { // ... return new MultiSelect(element, optionsObject, onDispose, facade, window, $); }, $); } )(window, $) 

рдирдпрд╛ рд╕рдордЭреМрддрд╛: рдкреНрд▓рдЧрдЗрди рдХреЛ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП - рддрд╛рдХрд┐ рдЖрдИрдЖрдИрдПрдлрдИ рдХреЗ рдЕрдВрджрд░ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдЦреЛ рди рдЬрд╛рдПред рд╣рд╛рдВ, рдПрдХ рдЖрдИрдЖрдИрдПрдлрдИ рд░рд╣рдирд╛ рдЪрд╛рд╣рд┐рдП - рдХрд┐рд╕реА рдиреЗ рдЦрд┐рдбрд╝рдХреА, $ рдФрд░ рдкреЙрдкрд░ рдирд┐рд░реНрднрд░рддрд╛ (рдЬреЛ "рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ") рдХреЛ рдорд╛рдирдХ рддрд░реАрдХреЗ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рдХрд╛рдо рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ред


рдПрд╕реНрд▓рд┐рдВрдЯ рдФрд░ рд╕реНрдЯрд╛рдЗрд▓рд▓рд┐рдВрдЯ рд▓рд┐рдВрдЯрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди


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


Eslint, рд╕реНрдЯрд╛рдЗрд▓рд▓рд┐рдВрдЯ рдЕрдХреНрд╕рд░ рдмрд╛рд╣рд░ рдирд╣реАрдВ рдЖ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдирдП рдирд┐рдпрдореЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреА рдХреЛрдИ рдЗрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИред рд╕рднреА рдкрд╣рд▓реБрдУрдВ рдореЗрдВ, рдпрд╣ рдЙрдкрд▓рдмреНрдзрд┐ рдореБрдЭреЗ рдФрд░ рдкрд░реЗрд╢рд╛рди рдХрд░рддреА рд╣реИред


рд╕рдВрдЧрдарди рдХреЛрдб рдФрд░ рд░реЛрд▓рдЕрдк


рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдХрд╛ ES6 рдкреБрдирд░реНрд╡рд┐рддрд░рдг рдХреЛрдб рджреЛ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рд░реЛрд▓рдЕрдк рджреНрд╡рд╛рд░рд╛ рдкреИрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди рдмреВрдЯрд╕реНрдЯреНрд░реИрдк.рдЬреЗрдПрд╕ рдФрд░ рдмрдВрдбрд▓ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк.рдмрдВрдбрд▓реЗ.рдЬреЗрдПрд╕ - рдмрд╛рдж рд╡рд╛рд▓реЗ рдореЗрдВ popper.js рд╢рд╛рдорд┐рд▓ рд╣реИрдВред


Rollup.config.js рдХреЗ рд▓реЗрдЦрдХ рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рд╡рд┐рджреЗрд╢реА рдкреНрд░рд╡реГрддреНрддрд┐ рдХреА рд╣реИред рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди рдпрд╛ рдмрдВрдбрд▓ рдХреЗ рдЖрд╡рд╢реНрдпрдХ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдкреБрд╢ рдФрд░ рдкреЙрдк рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдпрд╣ рд╕рднреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкрд░рд┐рд╡рд░реНрддрди , рд╡рд┐рд╕реНрддреГрдд рд░реВрдк рд╕реЗ рдФрд░ рдбрд░рд╛рдиреЗ рд╡рд╛рд▓рд╛ рд▓рдЧрддрд╛ рд╣реИ, рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рдкреНрд▓рдЧ-рдЗрди рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдмрдВрдбрд▓ "рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди" рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдФрд░ рдореБрдЭреЗ рдпрд╣ рд╕рд╛рдмрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рдмреЗрд╣рддрд░ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред


рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдХрд╛ рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди рд╕рдВрд╕реНрдХрд░рдг рднреА рдкреИрдХреЗрдЬ рдХреЗ рдореБрдЦреНрдп рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЕрд░реНрдерд╛рддреНред npm рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рдЙрд╕реА рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд╣рд▓ рд╣реЛрддреА рд╣реИрдВ рдЬрд┐рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ <script> рдорд╛рдзреНрдпрдо рд╕реЗ рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рдПрдХ рдЕрд╕реНрдкрд╖реНрдЯ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ BsMultiSelect рдкреНрд▓рдЧрдЗрди рдиреЗ рдЙрд╕реА рдкрде рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд┐рдпрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдмрд╛рдмреЗрд▓ рд╣реЗрд▓реНрдкрд░реНрд╕ рдХреЛ рдкреНрд▓рдЧрдЗрди рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рд╡реЗ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк.рдЬреЗрдПрд╕ рдореЗрдВ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рджреЛрд╣рд░рд╛рд╡ рдХрд┐рд╕реА рддрд░рд╣ рд╕рд╣реА рдирд╣реАрдВ рд╣реИ ...


рдордЬреЗ рдХреА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдореЗрдВ рдЬреЗрдПрд╕рдкреАрдПрдо рдХреЗ рддрд╣рдд рдПрдХ рд╕рдорд╛рдирд╛рдВрддрд░ рд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИ - рджреЗрд╢реА рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдИрдПрд╕ рдореЙрдбреНрдпреВрд▓ рд▓реЛрдбрд░ рдФрд░ рдЗрд╕рдХрд╛ рдореБрдЦреНрдп рдХреНрд╖реЗрддреНрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рд╛рдл рд░реАрдореЛрдЯреЗрдб рдХреЛрдб рд╣реИ, 12 рдШрдЯрдХ рдЬреЛ рдмрдВрдбрд▓ рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЬреЗрдПрд╕ / рдбрд┐рд╕реНрдЯ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЕрд▓рдЧ рд╕реЗ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдпрд╣рд╛рдБ, рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ babel рд╣реИрд▓реНрдкрд░ рд╢рд╛рдорд┐рд▓ рд╣реИред Jspm рдЕрдм рдПрдХ рдЪреМрд░рд╛рд╣реЗ рдкрд░ рд╣реИ, рдЗрд╕рд▓рд┐рдП BsMultiselect рдмрдирд╛рдХрд░ рдЗрд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВред


рдФрд░ рдЕрднреА рддрдХ рдпрд╣ рдкрд╛рд░рдЦреА рд▓реЛрдЧреЛрдВ рд╕реЗ рдкреВрдЫрдирд╛ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рдХреНрдпрд╛ jspm рд╕рднреА 12 рдмрд╛рд░ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд┐рдП рдЧрдП рд╕рд╣рд╛рдпрдХ рд╕рд╣рд╛рдпрдХреЛрдВ рдХреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдЙрдард╛рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИ?

рд░реЛрд▓рдЕрдк рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рдкреНрд▓рд╕ рдЦреЛрдЬрд╛ рдЧрдпрд╛ рд╣реИ - рдЗрд╕рдХреЗ рдкреИрдХреЗрдЬ рд╡реЗрдмрдкреЗрдХ рдХреЗ рд╡рд┐рдкрд░реАрдд рдкрдардиреАрдп рд╣реИрдВред


Bootsrap 4 рдореЗрдВ Babel 6 рдФрд░ BsMultiSelect Babel 7 рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ


BsMultiSelect рдЖрд╕рд╛рдиреА рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЧрдП рд░реЛрд▓рдЕрдк-рдмреИрдмрд▓-рдкреНрд▓рдЧрдЗрди (рдмреАрдЯрд╛ рдореЗрдВ рднреА) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмреИрдмреЗрд▓ 7 рдмреАрдЯрд╛ рдореЗрдВ рдЪрд▓рд╛ рдЧрдпрд╛ред рдирдП @babel/preset-env рдмреИрдмреЗрд▓ @babel/preset-env (рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдХрд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬрд┐рд╕ рдкрд░ рдХреЛрдб рдЪрд▓реЗрдЧрд╛ ") рдХреЗ рдХрд╛рд░рдг рдпрд╣ рдЕрдм рдмреИрдмреЗрд▓ 7 рдореЗрдВ рдЬрд╛рдиреЗ рд▓рд╛рдпрдХ рд╣реИ ред рдЕрдХреЗрд▓реЗ рдЗрдВрдЯрд░рдиреЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдпрд╣ рд╕рдордЭрдирд╛ рдХрд╛рдлреА рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рдЧрдпрд╛ рдХрд┐ рдИрдПрд╕ 6 рдкреНрд░реАрд╕реЗрдЯ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд╡реЗ рдПрдХ рд▓рдВрдмреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪрд▓реЗ рдЧрдП рдФрд░ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдкреБрд░рд╛рдиреЗ рд╡рд┐рдиреНрдпрд╛рд╕ рдЬрдорд╛ рд╣реЛ рдЧрдП рд╣реИрдВред рдмрд╛рдмреЗрд▓ 7 + @babel/preset-env рдмрд╛рдмреЗрд▓ @babel/preset-env рддреБрд░рдВрдд рджрд╛рдВрд╡ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╣реИ


рдлрд┐рд░ рднреА, рдмреИрдмреЗрд▓ рдХреА рдмреАрдЯрд╛ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЗрдВрддрдЬрд╛рд░ рдирд╣реАрдВ рдХрд░рдирд╛ рдкрдбрд╝рд╛: [... рдиреЛрдбрд▓рд┐рд╕реНрдЯ] рдХреЛ рдиреЛрдбрд▓рд┐рд╕реНрдЯ.рдХреЙрдирдХреИрдЯ () рдореЗрдВ рддрд╛рди рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдореБрдЭреЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрдпрд╛, рдХреЛрдб рдХреЛ рдЬрдХреНрд╡рд┐рд░реА рдХреЙрд▓ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдирд╛ (рдпрд╣ рдЕрднреА рднреА рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрд╕ рдкрд░ рдмрд╛рдж рдореЗрдВ) рдиреЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ред рдкреВрдЫреЗрдВ: "рддрдм рд╕рднреА рдмрдмреЗрд▓ рдкрд░ рдХреНрдпреЛрдВ рдЖрдк рдЙрд╕рдХреЗ рд╕рд╛рде рд╕реМрджрд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ?", рдЬрд╡рд╛рдм: "рдЖрдпрд╛рдд рдФрд░ рднреЗрдбрд╝ рдХрд╛ рдмрдЪреНрдЪрд╛ред"


рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдкрд╣рд▓реВ


рдмреВрдЯрд╕реНрдЯреНрд░реИрдк 4 рдФрд░ рдЗрд╕рдХреЗ рдкреНрд▓рдЧрдЗрди (рдХрд┐рд╕реА рднреА js рдХреЛрдб рдХреА рддрд░рд╣) рдореЗрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ: рд╕реНрдХреНрд░рд┐рдкреНрдЯ / рд╢реИрд▓реА ("рдкреЗрдЬ" рдмрдирд╛рдПрдВ) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ , рдФрд░ рдЕрд╕реЗрдВрдмрд▓реА рдиреЛрдб / рд╡реЗрдмрдкреИрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ ("рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдПрдВ", рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрди рджреЛрдиреЛрдВ рдХреЛ рдЬрд╛рд░реА рд░рдЦреВрдВрдЧрд╛ рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдмрд╣реБрдд рдЕрд▓рдЧ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдФрд░ рдирд┐рд░реВрдкрд┐рдд: "рдкреГрд╖реНрда" рдФрд░ "рдЖрд╡реЗрджрди")ред
рдкреГрд╖реНрда рдХреЗ рд▓рд┐рдП рдФрд░ рдЖрд╡реЗрджрди рдХреЗ рд▓рд┐рдП, рдПрдХ рд╣реА рдмреВрдЯрд╕реНрдЯреНрд░реИрдк "рд╡рд┐рддрд░рдг рдлрд╝рд╛рдЗрд▓" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рдПрдХ рд╕реНрдкрд╖реНрдЯ рдФрд░ рдПрдХрдорд╛рддреНрд░ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, jspm рдФрд░ mocha рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ), рд▓реЗрдХрд┐рди рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рдкреНрд▓рдЧрдЗрди рдмрдирд╛рддреЗ рд╕рдордп, рдЗрд╕ рд╕рдореНрдореЗрд▓рди рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рдирд╣реАрдВ рдмрдЪрд╛ рд╣реИ, рдЗрд╕рдХреА рдЗрд╖реНрдЯрддрдорддрд╛ рдХреА рдЙрдореНрдореАрдж рд╣реИред


рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдбрд╛рдЙрдирд▓реЛрдб рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рджреЛ рдЬрд░реВрд░рддреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рдмреАрдЪ рд╕рдВрддреБрд▓рди рдЦреЛрдЬрдирд╛: "рдкреЗрдЬ" рдФрд░ "рдПрдкреНрд▓рд┐рдХреЗрд╢рди" рдкреНрд▓рдЧ-рдЗрди рдбреЗрд╡рд▓рдкрд░ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝ рд░рд╣рд╛ рдореБрдЦреНрдп рд╡рд╛рд╕реНрддреБрд╢рд┐рд▓реНрдк рдХрд╛рд░реНрдп рд╣реИред


рд╕рдм рдХреЗ рдмрд╛рдж, рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдкреНрд▓рдЧрдЗрди рднреА рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдореЗрдВ рд╕рд╣реА, рддрджрд░реНрде рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдк рд╕рднреА рд╕реБрдЦреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд▓рдЧ-рдЗрди рдХреЛрдб рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ: рдкреЙрд▓реАрдлрд╝рд╛рдЗрд▓реНрд╕ рдФрд░ рдпреЛрдЬрдирд╛ рдХреЗ рдПрд╕рдПрдПрд╕ рдЪрд░ рддрдХ рдкрд╣реБрдВрдЪред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЬрдм рдкреБрди: рдЙрдкрдпреЛрдЧ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдкреНрд▓рдЧрдЗрди рдХреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ npm рдкреИрдХреЗрдЬ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛, рдЙрдкрд░реЛрдХреНрдд рд╕реБрдЦ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреА рд╢реНрд░реЗрдгреА рдореЗрдВ рдЬрд╛рддреЗ рд╣реИрдВ: рдЖрдк SASS рдЪрд░ рддрдХ рдкрд╣реБрдВрдЪ рдЦреЛ рджреЗрддреЗ рд╣реИрдВ рдФрд░ рдЖрдкрдХреЛ "рдкреГрд╖реНрдареЛрдВ" рдХреЗ рд░рдЪрдирд╛рдХрд╛рд░реЛрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдиреЗрдХреНрдЯ рд╣реЛрддреЗ рд╣реИрдВ (рдЬрд╣рд╛рдВ рдореЗрд░реЗ рдкреЙрд▓реАрдлрд╝рд╛рдЗрд▓реНрд╕ рд╣реИрдВ?)ред


SASS рдмреВрдЯрд╕реНрдЯреНрд░реИрдк 4 рд╕реНрдЯрд╛рдЗрд▓ рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рддрдХ рдкрд╣реБрдВрдЪ


рдореИрдВ рдкреНрд▓рдЧрдЗрди рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рд╕реАрдПрд╕рдПрд╕ рдХреНрд▓рд╛рд╕реЗрд╕ / рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдХреЛ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдереАрдо рдХреЛ рдХрд╕реНрдЯрдорд╛рдЗрдЬрд╝ рдХрд░рддреЗ рд╕рдордп, рдЖрдк рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд░рдпрд╛рд╕ рдХреЗ рдмрд┐рдирд╛ рдкреНрд▓рдЧрдЗрди рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рдПрдХ рд╕реНрд╡-рдкреНрд░рдХрд╛рд╢рд┐рдд рдкреНрд▓рдЧрдЗрди рдХреЗ рд▓рд┐рдП, SASS рдЪрд░реЛрдВ рдХреА рдкрд╣реБрдБрдЪ рдирд╣реАрдВ рд╣реИред


рдореМрдЬреВрджрд╛ рд╕реАрдПрд╕рдПрд╕ рдХрдХреНрд╖рд╛рдПрдВ / рдЪрдпрдирдХрд░реНрддрд╛ - BsMutliSelect рдХреЗ рд▓рд┐рдП рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдХрд╡рд░ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ ul.form-control рд▓рд┐рдП min-height рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬрдм bootstrap.css рдореЗрдВ input.form-control рд▓рд┐рдП рдКрдВрдЪрд╛рдИ рдХреЗ рд╕рд╛рде рдХреЗрд╡рд▓ рдПрдХ css рдЪрдпрдирдХрд░реНрддрд╛ рд╣реЛрддрд╛ рд╣реИ - рдЖрдк рдЗрд╕реЗ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ ul ред рдЕрдиреНрдп рдореМрдЬреВрджрд╛ рд╡рд░реНрдЧ / рдЪрдпрдирдХрд░реНрддрд╛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╢рд╛рдирджрд╛рд░ рд╢реИрд▓реА рд▓рд╛рддреЗ рд╣реИрдВ: рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдк рдЕрд╕рд╛рдЗрди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╡рд░реНрдЧ .form-control рдЖрд╡рдВрдЯрд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рдХрд┐рд╕реА рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рд░рдВрдЧ- .form-control ? рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡рд╣рд╛рдБ рдХреЛрдИ рдРрд╕рд╛ рд╡рд░реНрдЧ рдирд╣реАрдВ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ .input-color , рдЬрд┐рд╕рдореЗрдВ рдЪрд░ $ рдЗрдирдкреБрдЯ-рд░рдВрдЧ рдХреЛ рд╣рд░ рдЪреАрдЬрд╝ рд╕реЗ "рдЕрд▓рдЧ" рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред


рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдЯреАрдо рдХреЗ рдирд┐рд░реНрдгрдпреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ: рдЙрдирдХреЗ рдкрд╛рд╕ рдРрд╕реА рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рдЕрдЧрд░ рдЙрдиреНрд╣реЗрдВ рдЬрд░реВрд░рдд рд╣реИ - рд╡реЗ рд╡рд╛рдВрдЫрд┐рдд рдЪрд░ рдХреЗ рд╕рд╛рде рдПрдХ рд╕реАрдПрд╕рдПрд╕ рд╡рд░реНрдЧ / рдЪрдпрдирдХрд░реНрддрд╛ рдмрдирд╛рдПрдВ рдФрд░ рдЙрд╕ рдкрд░ рдХрд╛рдо рдХрд░реЗрдВред рдпрджрд┐ рдЖрдк рдмрд╣рд╕ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдорд╛рд░реНрдХ рдУрдЯреЛ рдХреЗ рд╕рд╛рде рд╕рдордЭрд╛рдирд╛ рд╣реЛрдЧрд╛, рдмреАрдПрд╕ рдЯреАрдо рдореЗрдВ рд╕реАрдПрд╕рдПрд╕ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдореЗрдВ рдХреЙрд╕реНрдореЗрдЯрд┐рдХ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд▓рд┐рдП рднреА рдЕрд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдЙрдЪреНрдЪ рд╕реНрддрд░ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрдЧрд░ рдЕрдиреБрд░реЛрдз "рдкреНрд░рд╕реНрддрд╛рд╡" рд╢реНрд░реЗрдгреА рдореЗрдВ рдЖрддреЗ рд╣реИрдВред


рдореИрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдорд╛рдзрд╛рди рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░рддрд╛ рд╣реВрдВред


рдПрдХ рдкреГрд╖реНрда рдХреЗ рд▓рд┐рдП (рдПрдХ script рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд▓рдЧ-рдЗрди рдмрдврд╝рд╛рдХрд░) рдЖрдкрдХреЛ рдЪрд░ рдХреА рджреБрд░реНрдЧрдорддрд╛ рдХреЗ рд╕рд╛рде рдКрдкрд░ рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рд╕реАрдПрд╕рдПрд╕ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ - рджреБрд░реНрдЧрдо рдЪрд░ рдХреЛ рдЬреЗрдПрд╕ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдкреЗрд╢рдХрд╢ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЙрдирдореЗрдВ рд╕реЗ рдХрдИ рдирд╣реАрдВ рд╣реИрдВ (рдФрд░ рдЙрди рд╕рднреА рдХреЛ рдХрд┐рд╕реА рднреА рдпреЛрдЬрдирд╛ рджреНрд╡рд╛рд░рд╛ рдирд╣реАрдВ рдмрджрд▓рд╛ рдЧрдпрд╛ рд╣реИ)ред BsMultiSelect рдХреЗ рд▓рд┐рдП, рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рдереЗ: рд╡рд┐рдХрд▓рд╛рдВрдЧ рд░рдВрдЧ, рдЗрдирдкреБрдЯ рд░рдВрдЧ, рдирд┐рдпрдВрддреНрд░рдг рдЫрд╛рдпрд╛ (рдЖрджрд┐ рдХреЗрд╡рд▓ 10 рд╢реИрд▓рд┐рдпреЛрдВ, рдЙрдирдореЗрдВ рд╕реЗ рдЬреНрдпрд╛рджрд╛рддрд░ рд╢рд╛рдпрдж рд╣реА рдХрднреА рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдмрджрд▓рддреЗ рд╣реИрдВ) ...


рдПрдХ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЙрди рд╕рднреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреА рдШреЛрд╖рдгрд╛ рд╣реИ рдЬрд┐рди рдкрд░ рдкреНрд▓рдЧрдЗрди рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ ...
 $("select[multiple='multiple']").bsMultiSelect({ selectedPanelDefMinHeight: 'calc(2.25rem + 2px)', // default size selectedPanelLgMinHeight: 'calc(2.875rem + 2px)', // LG size selectedPanelSmMinHeight: 'calc(1.8125rem + 2px)', // SM size selectedPanelDisabledBackgroundColor: '#e9ecef', // disabled background selectedPanelFocusBorderColor: '#80bdff', // focus border selectedPanelFocusBoxShadow: '0 0 0 0.2rem rgba(0, 123, 255, 0.25)', // foxus shadow selectedPanelFocusValidBoxShadow: '0 0 0 0.2rem rgba(40, 167, 69, 0.25)', // valid foxus shadow selectedPanelFocusInvalidBoxShadow: '0 0 0 0.2rem rgba(220, 53, 69, 0.25)', // invalid foxus shadow inputColor: '#495057', // color of keyboard entered text selectedItemContentDisabledOpacity: '.65' // btn disabled opacity used }); 

рд▓реЗрдХрд┐рди рдПрд╕рдПрдПрд╕рдПрд╕ рдФрд░ рдХрд▓реЗрдХреНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдПрдХ рдЖрд╡реЗрджрди рдХреЗ рд▓рд┐рдП, рдЖрдк рдЕрдкрдиреЗ рдЖрдк рдХреЛ BsMultiSelect.scss рдХреЙрдкреА рдХрд░рдиреЗ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЕрдкрдиреЗ _variables.scss рдХреЗ рд▓рд┐рдП рдкрде рдХреЛ рд╕рд╣реА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЪрд░ рдЪрд░ рдХреЛ "рдкреНрд░рд╛рдкреНрдд" рдХрд░реЗрдЧрд╛ред


CSS рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рднреА ...
  $("select[multiple='multiple']").bsMultiSelect({ useCss: true }); 

рдЗрди рджреЛ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдореЗрд░реЗ рдЬреЗрдПрд╕ рдХреЛрдб рдореЗрдВ рджреЛ "рдПрдбреЗрдкреНрдЯрд░" рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред BsMultiSelect рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдореЗрдВ рджреЛ рдкреНрд▓рдЧрдЗрдиреНрд╕ рд╣реИред рдПрдХ рдЬреЛ рдЬреЗрдПрд╕ рд╡реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рджреВрд╕рд░рд╛ рдЗрд╕ рд╕реАрдПрд╕рдПрд╕ рдХрд╛рдо рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред


рдЙрд╕реА рд╕рдордп, рдореБрдЭреЗ рд╕реАрдзреЗ рддреМрд░ рдкрд░ рдХрд╣рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдЬреЗрдПрд╕ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╕реНрдЯрдо рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╣рд╕реНрддрд╛рдВрддрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рднреА рд╕реАрдПрд╕рдПрд╕ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рдХрд┐ рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓реЗрдЦрдХ рдЖрдорддреМрд░ рдкрд░ рдЕрдкрдирд╛ рдХрд╛рдо рдмрд╣реБрдд рдореЛрдЯреЗ рддреМрд░ рдкрд░ рдХрд░рддреЗ рд╣реИрдВред рдпрд╛ рдЕрдЬреАрдм рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реНрдХреАрде рд╕реНрдХреАрдо рдиреЗ рдХрд┐рд╕реА рддрд░рд╣ рддрдп рдХрд┐рдпрд╛ рдХрд┐ рдореЗрдиреВ рдХреЛ рд╣реЙрд╡рд░ рдкреНрд░рднрд╛рд╡ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдлреАрдЪрд░реНрд╕ рджрд╛рдЦрд┐рд▓ рдХрд░рдиреЗ рд╣реЛрдВрдЧреЗред


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


рдЬреЗрдПрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди
 $("select[multiple='multiple']").bsMultiSelect({ selectedPanelFocusBoxShadow:"0px 0px 0px 0.2rem rgba(51,51,51,0.25)", selectedPanelFocusBorderColor:"#333", selectedPanelDisabledBackgroundColor: "#f7f7f9" }); 


рдпрд╣ рд╡рд╣ рдЕрдзрд┐рдХрддрдо рд╣реИ рдЬреЛ "рдорд╛рдирдХ" рд╕реАрдПрд╕рдПрд╕ рдХрдХреНрд╖рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред .bage , .form-control , .form-control , рдЖрджрд┐ред рд▓рдЧрднрдЧ рд╕рдм рдХреБрдЫ рдпреЛрдЬрдирд╛ рдХреЗ рдЕрдиреБрдХреВрд▓ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдм рдХреБрдЫ рдирд╣реАрдВред


рдпрд╣ рдЕрдлрд╝рд╕реЛрд╕ рдХреА рдмрд╛рдд рд╣реИ, рдХрд┐ рдЖрдк рдЗрди рддреАрди рдорд╛рдкрджрдВрдбреЛрдВ рд╕реЗ рджреВрд░ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рднреА рд╕реНрдХреАрдорд╛ рд╢реИрд▓реА рдЪрд░ рд╕реАрдПрд╕рдПрд╕ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ / рд╡рд░реНрдЧреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реБрд▓рдн рдирд╣реАрдВ рд╣реИрдВ (рдореИрдВ рдЭреВрда рдмреЛрд▓ рд░рд╣рд╛ рд╣реВрдВ, рдЖрдк рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ рдЖрдк BsMultiSlect.scss рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдХреЙрдкреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рд░реНрдХрд┐рдЯ рдЪрд░ рд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрддреБрд╖реНрдЯ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ , рдЬреИрд╕реЗ рд╕рднреА рдирд┐рд░реНрдгрдп рдЬреЛ "рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдХреЙрдкреА рдХрд░реЗрдВ" рд╢рдмреНрджреЛрдВ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреЗ рд╣реИрдВ)ред


рдпрд╣рд╛рдВ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ: https://dashboardcode.imtqy.com/BsMultiSelect/indexsketchy.html


Polyfill'y


рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ "рдореИрдВ рдЖрд╡реЗрджрди рдХреЗ рдЕрдВрджрд░ рдПрдХ рддрджрд░реНрде рдкреНрд▓рдЧрдЗрди рд▓рд┐рдЦ рд░рд╣рд╛ рд╣реВрдВ" - рдЖрдк рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреЗ @babel/polyfill рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рдФрд░ рдкреЙрд▓реАрдлрд╝рд┐рд▓.рдЖрдИрдУ рдбреЛрдо рдХреЛ рдкреИрдЪ рдХрд░реЗрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдХреЗ рдЕрдВрджрд░ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣реИред


рдЬрдм рдПрдХ рдкреНрд▓рдЧрдЗрди рдХреЛ рдПрдХ рдмрд╛рд╣рд░реА рдПрдирдкреАрдПрдо рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд▓реЗ рдЬрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕рднреА рдЦреБрд╢реА рдЧрд╛рдпрдм рд╣реЛ рдЬрд╛рддреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдиреЗ рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдкреЙрд▓реАрдлрд┐рд▓ рдХреА рд▓рдВрдмреА рд╕реВрдЪреА рдХреЛ рдЦреБрд╢ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред


рд╕рдорд╛рдзрд╛рди: рд╡рд╣ рд╕рднреА рдмрд╛рдмреЗрд▓ рд╕реНрдерд╛рдирд╛рдВрддрд░рдг рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдкреЙрд▓реАрдлрд╝рд╛рдЗрд▓реНрд╕ рдХреЛ рдЫреЛрдбрд╝ рджреЗрдВрдЧреЗ, рдРрд╕рд╛ рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХреЗрдВрдЧреЗ, рдЕрдкрдиреЗ рджрд╛рдБрдд рдкреАрд╕реЗрдВрдЧреЗ, jQuery рдХреЙрд▓ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░реЗрдВрдЧреЗ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, Node.closest $ рдореЗрдВ .closest)ред рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк 4 рдореЗрдВ рд╣реА рдЕрдкрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЬрд╛рд╣рд┐рд░ рд╣реИ рдпрд╣ рд╕реВрдЬрди рдХреЗ рдЦрд┐рд▓рд╛рдл рд▓рдбрд╝рд╛рдИ рд╣реИред рдЖрд╢реНрдЪрд░реНрдпред jQuery рдПрдХ рдкреЙрд▓реАрдлрд╝рд┐рд▓ рд╣реИред


рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ CanIUse.com рдФрд░ MDN.com рдкрд░ рдирдЬрд░ рд░рдЦрдиреЗ рдХреЗ рд╕рд╛рде рдмреИрдмрд▓ рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдордЬреЗрджрд╛рд░ рдирд╣реАрдВ рд╣реИред рдФрд░ рдХреЛрдб рдЕрдЬреАрдм рд╣реИ (рдореЗрд░реЗ рд▓рд┐рдП)ред


рдпрд╣рд╛рдВ рд╕реНрдерд┐рддрд┐ рдХреЛ рдлрд┐рд░ рд╕реЗ рдКрдкрд░ рд╕реЗ рдЙрдЬрд╛рдЧрд░ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рджреЛ jQuery рдФрд░ popper.js рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред Popper.js рдПрдХ рджреЛрд╣рд░рд╛ рд╡реИрдирд┐рд▓рд╛ рдврд╛рдВрдЪрд╛ рд╣реИ, рдЗрд╕рдореЗрдВ рдХреЛрдИ рднреА рдмрд╛рдмреЗрд▓, jQuery рдпрд╛ рдмрд╛рд╣рд░реА рдкреЙрд▓реАрдлрд╝рд┐рд▓ рдирд╣реАрдВ рд╣реИ, рд╕рднреА рдЕрдкрдиреЗ рдЖрдк рд╕реЗред JQuery рдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмрд╛рдмреЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЧреНрд░рдВрдЯ рджреНрд╡рд╛рд░рд╛ рдкреИрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рддрд░рд╣ рдЬрд╛рджреБрдИ рд░реВрдк рд╕реЗ рдЕрдкрдиреЗ рдкреЙрд▓реАрдлрд┐рд▓ рдФрд░ рд╣реЗрд▓реНрдкрд░ рдХреЗ рдмрд┐рдирд╛ред рдПрдХ рддреГрддреАрдп-рдкрдХреНрд╖ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдкреНрд▓рдЧрдЗрди (рдЬреИрд╕реЗ BsMultiSelct) Babel 7 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЖрдкрдХрд╛ рдЙрддреНрдкрд╛рдж рдЕрднреА рднреА рдХреБрдЫ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдХреЛрдИ рдПрдХрд▓ рдкреЙрд▓реАрдлрд╝рд╛рдЗрд▓ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдирд╣реАрдВ рд╣реИ, рдХрдИ рдХреЛрдб рджреЛрд╣рд░рд╛рд╡ рдХреА рдЙрдореНрдореАрдж рд╣реИ, рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдПрдХ рд╣реА рдирд┐рдХрдЯрддрдо рд▓реЛрдб рдХреЗ рдЪрд╛рд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИрдВред рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред


рдпрджрд┐ рдЖрдк рдЕрдкрдирд╛ рд╕реНрд╡рдпрдВ рдХрд╛ рдкреНрд▓рдЧрдЗрди рдмрдирд╛рддреЗ рд╕рдордп рдкреЙрд▓реАрдлрд╝рд╛рдЗрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдпрд╣ рдпрд╛рдж рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдпрджрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдЗрдирд▓рд╛рдЗрди рд╕реНрдХреНрд░рд┐рдкреНрдЯреНрд╕ рд╣реИрдВ (рдпрд╛рдиреА <script>$( function() {/*..*/}) </script> ) рддреЛ рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдкреЙрд▓реАрдлрд╝рд╛рдЗрд▓реНрд╕ рдХреЛ рд╕рдордХрд╛рд▓рд┐рдХ рд░реВрдк рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ рд╣реЛрдЧрд╛ (рдЕрдиреНрдпрдерд╛ рдЗрдирд▓рд╛рдЗрди рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрди рд╕реЗ рдкрд╣рд▓реЗ рд╣реА рд╢реБрд░реВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрдм рдкреНрд▓рдЧрдЗрди рд▓реЛрдб рд╣реЛрддрд╛ рд╣реИ)ред рдпрд╛рдиреА рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╡реЗрдмрдкреИрдХ- рдкреЙрд▓реАрдлрд┐рд▓ -рдЗрдВрдЬреЗрдХреНрдЯрд░ (рдореЗрд░реЗ рд▓рд┐рдП рдЬреНрдЮрд╛рдд рд╕рдмрд╕реЗ рдЕрдореАрд░ рдкреЙрд▓реАрдлрд┐рд▓ рдЗрдВрдЬреЗрдХреНрдЯрд░) рдореБрдЭреЗ рдЗрд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рдкреЙрд▓реАрдлрд┐рд▓реНрд╕ рдХреЛ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░) рд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рди рд▓реЗред


рдХреЛрдИ jQuery рдирд╣реАрдВ


jQuery рдХреЛ рдХреБрдЫ рд╡рд┐рд╖рд╛рдХреНрдд рд▓рдЧрддрд╛ рд╣реИ, рдЬреЛ рдмреИрдмрд▓ / ES6 рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзрд╛ рдФрд░ рдЕрд╕реНрдкрд╖реНрдЯ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИред рд╢рд╛рдЦрд╛ v4-whithout-jquery рд╣реИ , рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреВрд▓ рдЕрдиреБрд░реЛрдз рдореЗрдВ рд╣реИ, рдпрд╣ bootstrap-nojquery рд╕реА рд╕рдВрд╕реНрдХрд░рдг 4.3 рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реИред рдкрд╣рд▓реЗ, рдШрдЯрдирд╛рдУрдВ рдХреЗ рдирд╛рдо рд╕реНрдерд╛рди рдХреЛ jquery рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреА рд╕рдмрд╕реЗ рдмрдбрд╝реА рд╕рдорд╕реНрдпрд╛ рдХрд╣рд╛ рдЬрд╛рддрд╛ рдерд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдЖрдк рдЙрдирдХреЗ рдмрд┐рдирд╛ рд▓рд┐рдЦ тАЛтАЛрд╕рдХрддреЗ рд╣реИрдВ (BsMultiSelect рдмрд┐рдирд╛ рдХрд┐рдП)ред рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЧрдпрд╛ред


рдпрд╣ рднреА рдШреЛрд╖рдгрд╛ рдХреА рдЧрдИ рдереА рдХрд┐ рд╕рдВрд╕реНрдХрд░рдг 4.3 рд╕реЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдореВрд▓ рдШрдЯрдХреЛрдВ рдХреЛ рдЕрд▓рдЧ рд╕реЗ рд▓реЛрдб рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ (рдХреЗрд╡рд▓ "рдПрдкреНрд▓рд┐рдХреЗрд╢рди" рдкрд░рд┐рджреГрд╢реНрдп рдХреЗ рд▓рд┐рдП)ред рдХреНрдпрд╛ рдореВрд▓ рдШрдЯрдХ " BsMultiSelect " рдХреА рддрд░рд╣ рдмрди рдЬрд╛рдПрдВрдЧреЗ ? рдирд╣реАрдВред рдпрджрд┐ рдмреАрдПрд╕ рдЯреАрдо рдХреЛ рдХреБрдЫ рдПрд╕рдПрдПрд╕ рдЪрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рд╡реЗ рдЕрдкрдиреЗ рд▓рд┐рдП рд╕реАрдПрд╕рдПрд╕ рдХрдХреНрд╖рд╛рдПрдВ / рдЪрдпрдирдХрд░реНрддрд╛ рдмрдирд╛рдПрдВрдЧреЗ рдФрд░ рдЬреЗрдПрд╕ ("рдХрд╛рд░реНрдпрд╛рддреНрдордХ рд╕реАрдПрд╕рдПрд╕") рд╕реЗ рдЙрди рдкрд░ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗред рдХрд╕реНрдЯрдо рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдирд┐рд░реНрдорд╛рддрд╛ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИрдВред


5 рд╡реАрдВ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ sass рд╕реЗ рдкреЛрд╕реНрдЯ-рд╕реАрдПрд╕рдПрд╕ https://github.com/twbs/bootstrap/projects/11 рдкрд░ рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдВрдХреНрд░рдордг рдореМрд▓рд┐рдХ рд░реВрдк рд╕реЗ рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИред рдпрд╛ рд╕рдм рдХреБрдЫ рдмрджрд▓ рджреЗрддрд╛ рд╣реИ: "HTML рдкрд░ JS"ред


рдмреВрдЯрд╕реНрдЯреНрд░реИрдк 5 рдХреЛ рдмреИрдмреЗрд▓ рдкреЙрд▓реАрдлрд╝рд╛рдЗрд▓реНрд╕ рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдФрд░ рдбреЛрдо рдХреЛ рдХреИрд╕реЗ рдкреИрдЪ рдХрд░рдирд╛ рд╣реИ, рдЗрд╕ рдкрд░ рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреА рд╣реЛрдВрдЧреАред рдпрд╣рд╛рдВ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рди рдЕрдзрд┐рдХ рдпрд╛ рдХрдо рд╕реНрдкрд╖реНрдЯ рд╣реИ: рдкреГрд╖реНрда рд░рдЪрдирд╛рдХрд╛рд░реЛрдВ рдФрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд░рдЪрдирд╛рдХрд╛рд░реЛрдВ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд┐рдзрд╛рдирд╕рднрд╛рдУрдВ рдХреА рдкреЗрд╢рдХрд╢ рдХреА рдЬрд╛рдПрдЧреАред


рдкрд░рд┐рдгрд╛рдо


рдЬрдм рдЖрдк рдмрдлрд╝реЗрд▓ рдкрд░ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк 4 рдШрдЯрдХ рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рддреЛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗ рдмрд┐рдирд╛, рдЬреЛ рдХрд┐ рдкреЙрд▓реАрдлрд╝рд╛рдЗрд▓реНрд╕ рдХрд╛ рдЕрд░реНрде рд╣реИ, рдФрд░ рдЬрд╣рд╛рдВ рд╢реИрд▓реА рдЪрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдбреЙрдкреНрдЯрд░ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЖрдк рджреБ: рдЦ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВред


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

Source: https://habr.com/ru/post/hi416235/


All Articles