рд╡рд░реНрддрдорд╛рди рдЯреЗрдореНрдкреНрд▓реЗрдЯ JSX рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реИ, рдФрд░ рдХрд┐рд╕реА рднреА { рдХреЛ рдкрд╛рд░реНрд╕ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЬрд┐рд╕рд╕реЗ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд╣реЛрдВрдЧреА, рдФрд░ рдХреЛрдИ рднреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди {рдкреНрд░рддреАрдХ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛрдЧрд╛
рдореБрдЭреЗ рдпрд╣ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдирд╣реАрдВ рдорд┐рд▓рд╛ред рд╢рд╛рдпрдж рдореИрдВ рдкрд░реНрдпрд╛рдкреНрдд рд╕рд╛рд╡рдзрд╛рди рдирд╣реАрдВ рдерд╛ред
// such
style={{ textAlign: 'right' }}
render() {
return (
<Form
className="ant-advanced-search-form"
onSubmit={this.handleSearch}
>
<Row gutter={24}>{this.getFields()}</Row>
<Row>
<Col span={24} style={{ textAlign: 'right' }}>
<Button type="primary" htmlType="submit">Search</Button>
<Button style={{ marginLeft: 8 }} onClick={this.handleReset}>
Clear
</Button>
</Col>
</Row>
</Form>
);
}
рдЕрдЧрд░ рдореИрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭреВрдВ, рддреЛ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рд╣реИрдВрдбрд▓рдмрд╛рд░ рдХрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ {{expression}}
рд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдЯреИрдЧ рдореЗрдВ рдмрджрд▓ рдЬрд╛рдП, рдЬреИрд╕реЗ [[expression]]
рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ ^&expression&^
?
рдореИрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛ рдирд╣реАрдВ рд╣реВрдВ рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣реИрдВрдбрд▓рдмрд╛рд░ рд▓реЗрдХреНрд╕ рдФрд░ рд╡рд╛рдИрдПрд╕реАрд╕реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ:
https://github.com/wycats/handlebars.js/blob/master/src/handlebars.l
рдпрд╣ рд▓реЗрдХреНрд╕ рдлрд╝рд╛рдЗрд▓ рд╣реИ, рдпрд╣ рдкрд╛рд░реНрд╕рд░ (yacc) рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдкрд╛рда рдХреЛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡рд╛рддреНрдордХ рдкреНрд░рддреАрдХреЛрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддреА рд╣реИред рдпрджрд┐ рдЖрдк рд╣реИрдВрдбрд▓рдмрд╛рд░ рдХреЗ рд▓рд┐рдП рдорд┐рд▓рд╛рди рдХрд┐рдП рдЧрдП рд╡рд░реНрдгреЛрдВ рдХреЛ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдкрд╕рдВрджреАрджрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ рдЙрдкрдпреБрдХреНрдд {{
рдФрд░ }}
рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛ред
рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдкреНрд░реЛрдЬреЗрдХреНрдЯ lex
рдФрд░ yacc
рдХреЗ рдХрд┐рд╕ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡реЗ рдЖрдо рддреМрд░ рдкрд░ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рдорд╛рди рд╣реЛрддреЗ рд╣реИрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрди рджрд┐рдиреЛрдВ рд╕рдмрд╕реЗ рдЖрдо рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдлреНрд▓реЗрдХреНрд╕ рдФрд░ рдмрд╛рдпреИрдХ рд╣реИрдВ
рдЕрдЧрд░ рдореИрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭреВрдВ, рддреЛ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рд╣реИрдВрдбрд▓рдмрд╛рд░ рдХрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕
{{expression}}
рд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдЯреИрдЧ рдореЗрдВ рдмрджрд▓ рдЬрд╛рдП, рдЬреИрд╕реЗ[[expression]]
рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐^&expression&^
?рдореИрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛ рдирд╣реАрдВ рд╣реВрдВ рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣реИрдВрдбрд▓рдмрд╛рд░ рд▓реЗрдХреНрд╕ рдФрд░ рд╡рд╛рдИрдПрд╕реАрд╕реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ:
https://github.com/wycats/handlebars.js/blob/master/src/handlebars.l
рдпрд╣ рд▓реЗрдХреНрд╕ рдлрд╝рд╛рдЗрд▓ рд╣реИ, рдпрд╣ рдкрд╛рд░реНрд╕рд░ (yacc) рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдкрд╛рда рдХреЛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡рд╛рддреНрдордХ рдкреНрд░рддреАрдХреЛрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддреА рд╣реИред рдпрджрд┐ рдЖрдк рд╣реИрдВрдбрд▓рдмрд╛рд░ рдХреЗ рд▓рд┐рдП рдорд┐рд▓рд╛рди рдХрд┐рдП рдЧрдП рд╡рд░реНрдгреЛрдВ рдХреЛ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдкрд╕рдВрджреАрджрд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ рдЙрдкрдпреБрдХреНрдд
{{
рдФрд░}}
рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛редрдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдкреНрд░реЛрдЬреЗрдХреНрдЯ
lex
рдФрд░yacc
рдХреЗ рдХрд┐рд╕ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡реЗ рдЖрдо рддреМрд░ рдкрд░ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рдорд╛рди рд╣реЛрддреЗ рд╣реИрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрди рджрд┐рдиреЛрдВ рд╕рдмрд╕реЗ рдЖрдо рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдлреНрд▓реЗрдХреНрд╕ рдФрд░ рдмрд╛рдпреИрдХ рд╣реИрдВ
рд╣рд╛рдБ, рдЗрд╕рдХрд╛ рдпрд╣реА рдорддрд▓рдм рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдХрд╣рддреЗ рд╣реИрдВ, рдЖрдкрдХреЛ рдмрд╛рд╣рд░реА рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдореВрдВрдЫреЗрдВ рдПрдХ рд╕рдорд╛рди рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИрдВред
рдХреГрдкрдпрд╛ рдореЗрд░реЗ рдЦрд░рд╛рдм рдЕрдВрдЧреНрд░реЗрдЬреА рдЕрдиреБрд╡рд╛рдж рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЛ рдХреНрд╖рдорд╛ рдХрд░реЗрдВред
рдЖрдк рдмреИрдХрд╕реНрд▓реИрд╢ рдХреЗ рд╕рд╛рде {{
рд╕реЗ рдмрдЪ рд╕рдХрддреЗ рд╣реИрдВ: \{{
, рд▓реЗрдХрд┐рди рдЪрд░рд┐рддреНрд░ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдмрджрд▓рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдЖрдк рдмреИрдХрд╕реНрд▓реИрд╢ рдХреЗ рд╕рд╛рде
{{
рд╕реЗ рдмрдЪ рд╕рдХрддреЗ рд╣реИрдВ:\{{
, рд▓реЗрдХрд┐рди рдЪрд░рд┐рддреНрд░ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдмрджрд▓рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ