
рдХрд┐рд╕реА рддрд░рд╣ рдореИрдВ рдПрдХ рдЫреЛрдЯреЗ рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд░реНрд╡рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рд╡рд┐рдЪрд╛рд░ рдореЗрдВ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдпрд╣ рдерд╛: рдХреНрд▓рд╛рдЗрдВрдЯ рдХреА рдУрд░ рд╕реЗ рд╣рдо рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЬреЗрдПрд╕ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЦрд┐рдбрд╝рдХрд┐рдпрд╛рдВ рдЦреАрдВрдЪрддреЗ рд╣реИрдВ, рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдкрд░ рд╣рдо рдЧреЛ рдореЗрдВ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦреЗ рдЧрдП рд╕рдВрдХрд▓рд┐рдд рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЗ рдХреЙрд▓ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рддреЗ рд╣реИрдВред
рдореИрдВрдиреЗ рдПрдХ рдврд╛рдВрдЪрд╛ рдЪреБрдирдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдЬреЛ рдПрдХ рдШреЛрд╖рдгрд╛рддреНрдордХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рдореЗрдВ, рдЗрд╕реЗ рдлреЙрд░реНрдо рдХрдВрдЯреЗрдВрдЯ рдХрд╛ рд╡рд┐рд╡рд░рдг рдпрдерд╛рд╕рдВрднрд╡ рд╕рд░рд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдлреЙрд░реНрдореЗрдЯ рдореЗрдВ YAML , JSON, BEMJSON , XML, рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ INF), рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдкрд░, рд╡рд░реНрдХрд┐рдВрдЧ рдХрдВрдЯреНрд░реЛрд▓ рдХреЗ рд╕рд╛рде рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдПрдХ рд╕реБрдВрджрд░ рдлреЙрд░реНрдо рдбреНрд░рд╛ рдХрд░реЗрдВред
рдкреЗрд╢реЗрд╡рд░ рд░реВрдк рд╕реЗ, рдореИрдВ рд╡реЗрдм рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реВрдВ рдФрд░ рдЗрд╕рд▓рд┐рдП рдЗрд╕ рд╕реНрддрд░ рдкрд░ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЕрдЯрдХреЗ рд░рд╣рдиреЗ рдХреА рдЙрдореНрдореАрдж рдирд╣реАрдВ рдереАред
рдФрд░ рдореИрдВ рдПрдХ рд▓реЗрдЦ рд▓рд┐рдЦрдиреЗ рдирд╣реАрдВ рдЬрд╛ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдлрд┐рд░ рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдЖрдзреБрдирд┐рдХ рд╡реЗрдм рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рдХрд╛ рдПрдХ рдирдпрд╛ рдмрд╛рд╣рд░реА рджреГрд╢реНрдп, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рд╢реБрд░реБрдЖрдд рднреА рд╕рдореБрджрд╛рдп рдХреЗ рд▓рд┐рдП рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛ рд╕рдХрддреА рд╣реИред рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ ...
HTML рдФрд░ CSS рдЯреЗрдореНрдкреНрд▓реЗрдЯ
рдореБрдЭреЗ рдЬреЛ рдХреБрдЫ рднреА рдорд┐рд▓рд╛ рдореИрдВрдиреЗ рд╡рд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬреИрд╕рд╛ рдореИрдВ рдЪрд╛рд╣рддрд╛ рдерд╛ред рдореИрдВ рд▓реЗрдЖрдЙрдЯ рдФрд░ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдирд╣реАрдВ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддрд╛ред рдореИрдВ HTML рдореЗрдВ рднреА рдирд╣реАрдВ рднрд░рдирд╛ рдЪрд╛рд╣рддрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк , рдХрдВрдХрд╛рд▓ , рдПрдордбреАрдПрд▓ , рдЖрджрд┐ рдЬреИрд╕реЗ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╕рдордп рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдирдореВрдирд╛ рдХреЛрдб рдмреВрдЯрд╕реНрдЯреНрд░реИрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░:
<div class="input-group mb-3"> <div class="input-group-prepend"> <div class="input-group-text"> <input type="checkbox" aria-label="Checkbox for following text input"> </div> </div> <input type="text" class="form-control" aria-label="Text input with checkbox"> </div> <button type="button" class="btn btn-primary btn-lg btn-block">Block level button</button>
рдЗрдирдкреБрдЯ рдкрд░ рдореИрдВ рдЬреЛ рдХреБрдЫ рднреА рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рд╡рд╣ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:
{ "main": { "prop":{}, "elements": [ { "type":"checkbox", "name":" -", "style":"classic", "checked": true }, { "type":"button", "name":"", "style":"outline", "onclick":"btnsave_onclick" } } }
рдареАрдХ рд╣реИ, рддрд╛рдХрд┐ рд╕рдореВрд╣реЛрдВ рдореЗрдВ рддрддреНрд╡реЛрдВ рдХреЛ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдФрд░ рдпрд╣ рдЗрдВрдЧрд┐рдд рдХрд░реЗрдВ рдХрд┐ рддрддреНрд╡реЛрдВ рдХреЛ рд╕рдореВрд╣ рдХреЗ рдЕрдВрджрд░ рдХреИрд╕реЗ рд╕реНрдерд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП: рд▓рдВрдмрд╡рдд рдпрд╛ рдХреНрд╖реИрддрд┐рдЬ рд░реВрдк рд╕реЗред рд╡рд╣рд╛рдВ рдХреНрдпрд╛ рдбрд┐рдЬрд╛рдЗрди рд╣реЛрдЧрд╛, рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИред рдореБрдЭреЗ рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╡рд┐рдВрдбреЛ рд╕рдВрдкрд╛рджрдХ рдорд┐рд▓рдиреЗ рдХреА рдЙрдореНрдореАрдж рдереА, рд▓реЗрдХрд┐рди рдирд╣реАрдВред
рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рд╡рд┐рдзрд╛рдирд╕рднрд╛
рдлрд┐рд░ рдореИрдВрдиреЗ рдХреБрдЫ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдЕрд╕реЗрдВрдмрд▓рд┐рдпреЛрдВ рдХреА рддрд▓рд╛рд╢ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА - рдХрд┐рд╕реА рдиреЗ рд▓рдВрдмреЗ рд╕рдордп рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рдВрдмрд╛ рд░рд╛рд╕реНрддрд╛ рддрдп рдХрд┐рдпрд╛ рд╣реЛрдЧрд╛ рдФрд░ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ред
рдФрд░ рдореБрдЭреЗ рдХреБрдЫ рд╡реИрд╕рд╛ рд╣реА рдорд┐рд▓рд╛ рдЬрд┐рд╕рдХреА рдореБрдЭреЗ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: BEM рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рдХреЗ рдкреВрд░реНрдг рдвреЗрд░ рдкрд░ рдПрдХ рд╕рд╛рдЗрдЯ ред
BEMJSON рдЙрджрд╛рд╣рд░рдг:
({ block: 'page', title: 'Hello, World!', styles: [ { elem: 'css', url: 'index.min.css' } ], scripts: [ { elem: 'js', url: 'index.min.js' } ], content: [ 'Hello, World!' ] })
рдЬрдм рдореИрдВрдиреЗ рдкрд╛рда рдХреА 20 рд╡реАрдВ рд╕реНрдХреНрд░реАрди рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рд╕реНрдХреНрд░реЙрд▓ рдХрд┐рдпрд╛, рдФрд░ рд╕реНрд▓рд╛рдЗрдбрд░ рдЕрднреА рднреА рд╢реАрд░реНрд╖ рдкрд░ рдерд╛, рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдпрд╣ рдЫреЛрдЯрд╛ рд░рд╛рд╕реНрддрд╛ рдХрд┐рд╕реА рддрд░рд╣ рд▓рдВрдмрд╛ рдерд╛ред рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛
рд╡реИрд╕реЗ, рдореИрдВрдиреЗ рдЗрд╕ BEM рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝рд╛ - рдореБрдЭреЗ рдпрд╣ рдкрд╕рдВрдж рдЖрдпрд╛, рдФрд░ рдпрд╣ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╡рд░реНрдгрд┐рдд рд╣реИред рд╡рд┐рднрд┐рдиреНрди рдЪреАрдЯ рд╢реАрдЯ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рдпрд╣ рдкрд╕рдВрдж рдЖрдпрд╛ред рдореИрдВрдиреЗ рднреА рдЬрд╛рдирдХрд╛рд░реА рдХреА рддрд▓рд╛рд╢ рдХреА рдФрд░ рдкрд╛рдпрд╛ рдХрд┐ рд╕рднреА рдХреЛ рддрдХрдиреАрдХ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдБ рдФрд░ рдпрд╣рд╛рдБ )ред рдФрд░ рдпрд╣рд╛рдБ, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рд╡рд┐рд╡рд╛рджрд╛рд╕реНрдкрдж рдмрд┐рдВрджреБрдУрдВ рдХрд╛ рд╕рд╛рд░ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред
рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЦреЛрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдмреАрдИрдПрдо рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдореБрдЭреЗ рдХреЛрдИ рдФрд░ рд╡реИрдХрд▓реНрдкрд┐рдХ рддрдХрдиреАрдХ рдирд╣реАрдВ рдорд┐рд▓реАред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╡реЗ рд╣реИрдВ: OOCS (рд╕рдорд╛рди рдмреАрдИрдПрдо рдХреА рддрд░рд╣, рдмрд╕ рд╕рд░рд▓), SMACSS , рдкрд░рдорд╛рдгреБ рдкрд░рдорд╛рдгреБ , CSSINJS ( рдпрд╣рд╛рдБ рдкрд╛рдпрд╛ рдЧрдпрд╛ )ред
Node.js
рдореИрдВрдиреЗ рддрдм рд╕реЛрдЪрд╛, рдареАрдХ рд╣реИ, рдЖрдк рдореВрд▓ рд╡рд┐рдЪрд╛рд░ рдХреЛ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рднрд╛рд╖рд╛ рдореЗрдВ рд╕рд░реНрд╡рд░ рднрд╛рдЧ рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрд░реНрдерд╛рдд, рдмрд╕ рдиреЛрдбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдпрд╣ рди рдХреЗрд╡рд▓ рдлреИрд╢рдиреЗрдмрд▓, рд╕реНрдЯрд╛рдЗрд▓рд┐рд╢, рдпреБрд╡рд╛ рд╣реИ, рдпрд╣ рдПрдХ рднрд╛рд╖рд╛ рдореЗрдВ рд╕рднреА рдкрд░рддреЛрдВ рдкрд░ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рднреА рд╣реИред рдмрд╣реБрдд рд╕рд╛рд░реЗ рд▓реЗрдЦ рдлрд┐рд░ рд╕реЗ (рдореБрдЭреЗ рдпрд╣ рд╢реБрд░реБрдЖрдд рдкрд╕рдВрдж рдЖрдИ)ред рдЕрдЧрд░ рдореИрдВ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рд╕рдордЭреВрдВ, рддреЛ рд▓рдЧрднрдЧ рдХрд┐рд╕реА рднреА рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдЕрдирдЧрд┐рдирдд рдПрдирдкреАрдПрдо рдкреИрдХреЗрдЬ рд▓рд┐рдЦреЗ рдЬрд╛рддреЗ рд╣реИрдВред рдЗрд╕ рд╡реНрдпрд╡рд╕рд╛рдп рдХреЗ рддрд╣рдд рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди рдЬреИрд╕реА рдЧрдВрднреАрд░ рдЪреАрдЬ рдЕрднреА рднреА рд╣реИред
рдЗрд▓реЗрдХреНрдЯреНрд░реЙрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирдореВрдирд╛ рдкреГрд╖реНрда рдХреЛрдб:
<head> <meta charset="utf-8"> <link rel="stylesheet" href="assets/css/variables.css"> <link rel="import" href="sections/about.html"> </head> <body> <nav class="nav js-nav"> <header class="nav-header"> <h1 class="nav-title">Electron <strong>API Demos</strong></h1> </header> <div class="nav-item u-category-windows"> </div> <footer class="nav-footer"> <button type="button" id="button-about" data-modal="about" class="nav-footer-button">About</button> </footer> </nav> <main class="content js-content"></main> <script> require('./assets/normalize-shortcuts') </script> </body> </html>
рдХреЗрд╡рд▓ рдорд╛рдЗрдирд╕ рдиреЛрдбрдЬ рдХрд┐ рдЧреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдзрд┐рдХ рдЙрддреНрдкрд╛рджрдХ рдЪреАрдЬрд╝ рд▓рд┐рдЦрдирд╛ рд╕рдВрднрд╡ рд╣реИред
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдореИрдВ рдиреЛрдбрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдПрдирдкреАрдПрдо рдкреИрдХреЗрдЬреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ рддрд╛рдХрд┐ рдЖрдк рдЦреБрдж рдХреЛ рдХреБрдЫ рдЙрдкрдпреБрдХреНрдд рдЪреБрди рд╕рдХреЗрдВред
рдПрдХ рдкреИрдХреЗрдЬ рд╣реИ рдЬрд┐рд╕реЗ рдлреЙрд░реНрдо рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ ред рдпрд╣рд╛рдБ рдПрдХ рдирдореВрдирд╛ рдХреЛрдб рд╣реИ:
var forms = require('forms'); var fields = forms.fields; var validators = forms.validators; var reg_form = forms.create({ username: fields.string({ required: true }), password: fields.password({ required: validators.required('You definitely want a password') }), confirm: fields.password({ required: validators.required('don\'t you know your own password?'), validators: [validators.matchField('password')] }), email: fields.email() });
рдпрд╣ рдЖрджреЗрд╢ reg_form.toHTML();
рджреНрд╡рд╛рд░рд╛ рдлреЙрд░реНрдо рдореЗрдВ рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ reg_form.toHTML();
ред рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рд╡рд┐рдХрд▓реНрдк, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред
рдПрд▓рд┐рдореЗрдВрдЯ , рджрдВрдЧрд╛ , TotalJS рдФрд░ iView рднреА рд╣реИрдВ ред рдЗрд╕реЗ рдмреВрдЯрд╕реНрдЯреНрд░реИрдк, рдПрдордбреАрдПрд▓ рдЖрджрд┐ рд╕реЗ рд╕реВрдЪреА рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рддрддреНрд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрджрд╛рд╣рд░рдг рдкреГрд╖реНрда рдХреЛрдб:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css"> </head> <body> <div id="app"> <el-button @click="visible = true">Button</el-button> <el-dialog :visible.sync="visible" title="Hello world"> <p>Try Element</p> </el-dialog> </div> </body> <script src="https://unpkg.com/vue/dist/vue.js"></script> <script src="https://unpkg.com/element-ui/lib/index.js"></script> <script> new Vue({ el: '#app', data: function() { return { visible: false } } }) </script> </html>
рдмреНрд▓реВрдкреНрд░рд┐рдВрдЯреНрд╕ рднреА рд╣реИрдВред рдпрд╣ рд╢рд╛рдпрдж рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдорд╛рди рд╣реИ рдЬреЛ рдореИрдВ рджреЗрдЦ рд░рд╣рд╛ рдерд╛ред рдирд┐рдпрдВрддреНрд░рдгреЛрдВ рдХреЛ рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ рдЕрд▓рдЧ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред
рдХреЛрдб рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
рдмреНрд▓реВрдкреНрд░рд┐рдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХреЛрдб import * as React from "react"; import { FormGroup, H5, InputGroup, Intent, Switch } from "@blueprintjs/core"; import { Example, handleBooleanChange, handleStringChange, IExampleProps } from "@blueprintjs/docs-theme"; import { IntentSelect } from "./common/intentSelect"; export interface IFormGroupExampleState { disabled: boolean; helperText: boolean; inline: boolean; intent: Intent; label: boolean; requiredLabel: boolean; } export class FormGroupExample extends React.PureComponent<IExampleProps, IFormGroupExampleState> { public state: IFormGroupExampleState = { disabled: false, helperText: false, inline: false, intent: Intent.NONE, label: true, requiredLabel: true, }; private handleDisabledChange = handleBooleanChange(disabled => this.setState({ disabled })); private handleHelperTextChange = handleBooleanChange(helperText => this.setState({ helperText })); private handleInlineChange = handleBooleanChange(inline => this.setState({ inline })); private handleLabelChange = handleBooleanChange(label => this.setState({ label })); private handleRequiredLabelChange = handleBooleanChange(requiredLabel => this.setState({ requiredLabel })); private handleIntentChange = handleStringChange((intent: Intent) => this.setState({ intent })); public render() { const { disabled, helperText, inline, intent, label, requiredLabel } = this.state; const options = ( <> <H5>Props</H5> <Switch label="Disabled" checked={disabled} onChange={this.handleDisabledChange} /> <Switch label="Inline" checked={inline} onChange={this.handleInlineChange} /> <Switch label="Show helper text" checked={helperText} onChange= {this.handleHelperTextChange} /> <Switch label="Show label" checked={label} onChange={this.handleLabelChange} /> <Switch label="Show label info" checked={requiredLabel} onChange= {this.handleRequiredLabelChange} /> <IntentSelect intent={intent} onChange={this.handleIntentChange} /> </> ); return ( <Example options={options} {...this.props}> <FormGroup disabled={disabled} helperText={helperText && "Helper text with details..."} inline={inline} intent={intent} label={label && "Label"} labelFor="text-input" labelInfo={requiredLabel && "(required)"} > <InputGroup id="text-input" placeholder="Placeholder text" disabled={disabled} intent={intent} /> </FormGroup> <FormGroup disabled={disabled} helperText={helperText && "Helper text with details..."} inline={inline} intent={intent} label={label && "Label"} labelFor="text-input" labelInfo={requiredLabel && "(required)"} > <Switch id="text-input" label="Engage the hyperdrive" disabled={disabled} /> <Switch id="text-input" label="Initiate thrusters" disabled={disabled} /> </FormGroup> </Example> ); } }
рдкрд░рд┐рдгрд╛рдо рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:

рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рд╣рдо рдХреЗрд╡рд▓ рдЕрдВрддрд┐рдо рднрд╛рдЧ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реИрдВ: рд╕рднреА рд╕рдорд╛рди, рдХрд┐рд╕реА рднреА рддрд░рд╣ рдпрд╣ рдмрд╣реБрдд рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдирд╣реАрдВ рд╣реИред
рдореБрдЭреЗ рд╡реЗрдм рдкрд░ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рднреА рдорд┐рд▓реА: рдореЗрдЯрд╛рдбреЗрдЯрд╛рдЬ ред рдПрдХ рддреНрд╡рд░рд┐рдд рд╢реБрд░реБрдЖрдд рдпрд╣рд╛рдБ рд╣реИ ред рдЗрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рдирд┐рд░рд░реНрдердХ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд▓реЗрдЦ рдореЗрдВ, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдпрд╣ рдирд╣реАрдВ рд╣реИ - рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рд╡рд░реНрдгрдиред рдпрд╣ рдпрд╣рд╛рдБ рд╣реИ ред
рд╣рдореЗрдВ рдлрд╝реЙрд░реНрдо рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреА рдкреЗрд╢рдХрд╢ рдХреА рдЬрд╛рддреА рд╣реИ:
рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдлрд╝реЙрд░реНрдо рдХрд╛ рд╡рд┐рд╡рд░рдгред Js { "enm": {}, "cat": { "": { "form": { "selection": { "fields": [ "is_folder", "id", "", "_t_.name as presentation", "`cat_`.name as ``", "`cat_`.name as ``" ], "cols": [ {"id": "id", "width": "120", "type": "ro", "align": "left", "sort": "server", "caption": ""}, {"id": "", "width": "150", "type": "ro", "align": "left", "sort": "server", "caption": ""}, {"id": "presentation", "width": "*", "type": "ro", "align": "left", "sort": "server", "caption": ""}, {"id": "", "width": "70", "type": "ro", "align": "left", "sort": "server", "caption": ""}, {"id": "", "width": "170", "type": "ro", "align": "left", "sort": "server", "caption": " "} ] } } }, "": { "form": { "selection": { "fields": [ "is_folder", "id", "_t_.name as presentation", "`enm_`.synonym as ``", "`cat_`.name as ``" ], "cols": [ {"id": "presentation", "width": "*", "type": "ro", "align": "left", "sort": "server", "caption": ""}, {"id": "", "width": "150", "type": "ro", "align": "left", "sort": "server", "caption": " "}, {"id": "", "width": "150", "type": "ro", "align": "left", "sort": "server", "caption": ""} ] } } } }, "doc": { "": { "form": { "selection": { "fields": [ "date", "number_doc", "", "", "posted", "", "" ], "cols": [ {"id": "date", "width": "120", "type": "ro", "align": "left", "sort": "server", "caption": ""}, {"id": "number_doc", "width": "120", "type": "ro", "align": "left", "sort": "server", "caption": ""}, {"id": "", "width": "170", "type": "ro", "align": "left", "sort": "server", "caption": ""}, {"id": "", "width": "120", "type": "ron", "align": "right", "sort": "server", "caption": ""}, {"id": "", "width": "100", "type": "ro", "align": "left", "sort": "server", "caption": ""}, {"id": "", "width": "*", "type": "ro", "align": "left", "sort": "server", "caption": ""} ] }, "obj": { "head": { " ": ["number_doc", "date", "", "", "", ""], "": ["", "", ""], "": ["", "", "", "", "", "", "", {"id": "", "path": "o.", "synonym": " ", "type": "ro"} ] }, "tabular_sections": { "": { "fields": ["row","","","","","","","","","","","","",""], "headers": "тДЦ,,,.,,,% ,,% ,,,.,,", "widths": "40,*,*,70,50,70,70,70,70,70,70,70,70,80", "min_widths": "40,200,140,70,50,70,70,70,70,70,70,70,70,80", "aligns": "", "sortings": "na,na,na,na,na,na,na,na,na,na,na,na,na,na", "types": "cntr,ref,ref,calck,refc,calck,calck,ron,refc,ron,ron,dhxCalendar,ref,txt" } } } } } }, "ireg": {}, "areg": {}, "dp": {}, "rep": {}, "cch": {}, "cacc": {} }
рдпрд╣ рдЖрдкрдХреА рдЬрд░реВрд░рдд рдХреЗ рд╕рдорд╛рди рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╕рд╡рд╛рд▓ рдЙрдарддрд╛ рд╣реИ: рдХреНрдпрд╛ рдмрдЯрди рд╕реЗрдЯ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд▓рдЧрддрд╛ рд╣реИ? рдХреНрдпрд╛ рдореИрдВ рдЗрд╕реЗ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реВрдВ? рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╡рд┐рд╡рд░рдг ("рдПрдПрдирдПрдо", "рдХреИрдЯ", рдЖрджрд┐) рдХрд╣рд╛рдВ рд╣реИ?
рдпрд╣ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдмрд╣реБрдд рдкреНрд░рдпрд╛рд╕ рдХрд┐рдП рдЧрдП рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЕрднреА рднреА рдирдо рд╣реИред
рдирд┐рд╖реНрдХрд░реНрд╖
рдЖрдЗрдП рдЕрдЯрдХрд▓реЗрдВ рд▓рдЧрд╛рддреЗ рд╣реИрдВред рдкреНрд░рдкрддреНрд░реЛрдВ рдХреЛ рд╕рд░реНрд╡рд░ рдкрд░ рдкрд╣рд▓реЗ рд╕реЗ рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЧреНрд░рд╛рд╣рдХ рдкрдХреНрд╖ рддреИрдпрд╛рд░ HTML / css / js-code рдкрд░ рд╕рдВрдХрд▓рд┐рдд рдФрд░ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдкрдХреЛ рдХреБрдЫ рдЕрд▓рдЧ рджреЗрдЦрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣рдорд╛рд░реЗ рд╕рд╛рде рдПрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡рд┐рдВрдбреЛ рдореЗрдВ рдХрд╛рдо рдХрд░реЗ, рдФрд░ рдЗрд╕ рд╡рд┐рдВрдбреЛ рдореЗрдВ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдЪрд╛рдЗрд▓реНрдб рд╡рд┐рдВрдбреЛ рджреЗрдЦреЗрдВ, рддреЛ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ css / js рдХреЛрдб рдХреЛ рдХреИрд╢ рдХрд░рдирд╛ рддрд░реНрдХрд╕рдВрдЧрдд рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдЬреЛ рд╕рд░реНрд╡рд░ рд╕реЗ рд╢реЙрд░реНрдЯ рдХрдорд╛рдВрдб рдХреЛ рдЕрдЧрд▓реЗ рдлреЙрд░реНрдо рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рд╕рд╛рде рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧрд╛ред рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЧреНрд░рд╛рд╣рдХ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреА рдХреАрдордд рдкрд░ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░реЗрдЧрд╛?
рд╕рд╣рдХрд░реНрдореА, рдЖрдк рдШреЛрд╖рдгрд╛рддреНрдордХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдврд╛рдВрдЪреЗ рдХреЛ рдХрд╣рд╛рдВ рдЫрд┐рдкрд╛рддреЗ рд╣реИрдВ? )
рд╡рд╣ рд╣реЛрдирд╛ рд╣реА рдЪрд╛рд╣рд┐рдП! рдореИрдВ рдЙрд╕реЗ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдвреВрдБрдв рд╕рдХрддрд╛?