Flutter: рдбрд╛рд░реНрдЯ рдХреЛрдб рдХреЗ рдЕрдВрджрд░ JSX рдЬреИрд╕реЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 14 рдЕрдЧре░ 2017  ┬╖  238рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: flutter/flutter

рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рд╡рд┐рдЬреЗрдЯ рдмрдирд╛рдиреЗ рдХреЗ рдореМрдЬреВрджрд╛ рддрд░реАрдХреЗ рд╕реЗ рдЕрд▓рдЧ рдЖрдк JSX рдЬреИрд╕реА рдХреНрд╖рдорддрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдбрд╛рд░реНрдЯ рдХреЛрдб рдХреЗ рдЕрдВрджрд░ рдПрдХреНрд╕рдПрдордПрд▓ рдЬреИрд╕реА рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЫреЛрдЯреА рд╡рд╛рдХреНрдп рд░рдЪрдирд╛рддреНрдордХ рдЪреАрдиреА рдЬреЛрдбрд╝реЗрдВред рдпрд╣ рдХреЛрдб рдХреЛ рдкрдврд╝рдиреЗ/рд╡рд┐рдХрд╕рд┐рдд/рдбреАрдмрдЧ/рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрддрдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдЬреАрдпреВрдЖрдИ рдмрд┐рд▓реНрдбрд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдХреЛрдб рдХреЗ рд╕рд╛рде рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред

DSX рдЬреИрд╕реА рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХреА рддрд▓рд╛рд╢ рд╣реИ:
https://spark-heroku-dsx.herokuapp.com/index.html

рдХрд╛рд░реНрд▓реЛрд╕ред


DSX рдХреЗ рд╕рд╛рде рд╡рд░реНрддрдорд╛рди рд╕рдорд╕реНрдпрд╛ рдлрд╝реНрд▓рдЯрд░ рдЯреВрд▓ рдХреЗ рд╕рд╛рде рдЙрдЪрд┐рдд рдПрдХреАрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ рддрд╛рдХрд┐ .dsx рдлрд╝рд╛рдЗрд▓реЛрдВ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдбрд┐рдмрдЧрд░, рдСрдЯреЛ-рдкреВрд░реНрдг, рдЖрджрд┐ рдХреЗ рд╕рд╛рде рдПрдХ рдорд╣рд╛рди рдбреЗрд╡рд▓рдкрд░ рдЕрдиреБрднрд╡ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред

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

рдЕрдЧрд░ рдЖрдк рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдореБрдЭреЗ рдмрддрд╛рдПрдВред

dart engine framework

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдареАрдХ рд╣реИ, рдЗрд╕рд▓рд┐рдП ' https://flutter.io/widgets-intro/#basic -widgets' рдкрд░ "рдмреЗрд╕рд┐рдХ рд╡рд┐рдЬреЗрдЯреНрд╕" рдХрд╛ рдЙрджрд╛рд╣рд░рдг рдирд┐рдореНрди рдЬреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛:

import 'package:flutter/material.dart';

class MyAppBar extends StatelessWidget {
  MyAppBar({this.title});

  // Fields in a Widget subclass are always marked "final".

  final Widget title;

  <strong i="7">@override</strong>
  Widget build(BuildContext context) {
    let style = {
        height: 56.0, // in logical pixels
        padding: const EdgeInsets.symmetric(horizontal: 8.0),
        decoration: <BoxDecoration color={Colors.blue[500]}/>,
    };

    return <Container style={style}>
      <Row>
        <IconButton
            icon={<Icon name={Icons.menu}/>}
            tooltip='Navigation menu'
            onPressed={null}
        />
        <Expanded>
           {title}
    </Expanded>  
        <IconButton
            icon={<Icon name={Icons.search}/>}
            tooltip='Search'
            onPressed={null}
        />
      </Row>
    </Container>;
  }
}

class MyScaffold extends StatelessWidget {
  <strong i="8">@override</strong>
  Widget build(BuildContext context) {
    // Material is a conceptual piece of paper on which the UI appears.
    return <Material>
      <Column>
          <MyAppBar
             title={<Text 
               text='Example title'
               style={Theme.of(context).primaryTextTheme.title},
             />}
          />
          <Expanded>
            <Center>
              <Text text='Hello, world!'/>
            </Center>
          </Expanded>
      </Column>
    </Material>;
  }
}

void main() {
  runApp(<MaterialApp
    title='My app'
    home={<MyScaffold/>}
  />);
}

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

рд╕реАрд╕реА @ рд▓реНрдпреВрдХрдЪрд░реНрдЪ

@cbazza рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдХреНрдпреЛрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рд╢рд╛рдпрдж рдЗрд╕рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджрд┐рдЦрд╛рдПрдБ рдХрд┐ рдпрд╣ рдЖрдЬ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛?

рдареАрдХ рд╣реИ, рдЗрд╕рд▓рд┐рдП ' https://flutter.io/widgets-intro/#basic -widgets' рдкрд░ "рдмреЗрд╕рд┐рдХ рд╡рд┐рдЬреЗрдЯреНрд╕" рдХрд╛ рдЙрджрд╛рд╣рд░рдг рдирд┐рдореНрди рдЬреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛:

import 'package:flutter/material.dart';

class MyAppBar extends StatelessWidget {
  MyAppBar({this.title});

  // Fields in a Widget subclass are always marked "final".

  final Widget title;

  <strong i="7">@override</strong>
  Widget build(BuildContext context) {
    let style = {
        height: 56.0, // in logical pixels
        padding: const EdgeInsets.symmetric(horizontal: 8.0),
        decoration: <BoxDecoration color={Colors.blue[500]}/>,
    };

    return <Container style={style}>
      <Row>
        <IconButton
            icon={<Icon name={Icons.menu}/>}
            tooltip='Navigation menu'
            onPressed={null}
        />
        <Expanded>
           {title}
    </Expanded>  
        <IconButton
            icon={<Icon name={Icons.search}/>}
            tooltip='Search'
            onPressed={null}
        />
      </Row>
    </Container>;
  }
}

class MyScaffold extends StatelessWidget {
  <strong i="8">@override</strong>
  Widget build(BuildContext context) {
    // Material is a conceptual piece of paper on which the UI appears.
    return <Material>
      <Column>
          <MyAppBar
             title={<Text 
               text='Example title'
               style={Theme.of(context).primaryTextTheme.title},
             />}
          />
          <Expanded>
            <Center>
              <Text text='Hello, world!'/>
            </Center>
          </Expanded>
      </Column>
    </Material>;
  }
}

void main() {
  runApp(<MaterialApp
    title='My app'
    home={<MyScaffold/>}
  />);
}

рдЗрд╕ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреИрд╕реЗ ?:

import 'package:flutter/material.dart';

class MyAppBar extends StatelessWidget {
  MyAppBar({this.title});

  // Fields in a Widget subclass are always marked "final".

  final Widget title;

  <strong i="6">@override</strong>
  Widget build(BuildContext context) {
    return Container(
      height: 56.0, // in logical pixels
      padding: EdgeInsets.symmetric(horizontal: 8.0),
      decoration: BoxDecoration(color: Colors.blue[500]),
      child: Row(
        children: <Widget>[
          IconButton(
            icon: Icon(Icons.menu),
            tooltip: 'Navigation menu',
            onPressed: null,
          ),
          Expanded(
            child: title,
          ),
          IconButton(
            icon: Icon(Icons.search),
            tooltip: 'Search',
            onPressed: null,
          ),
        ],
      ),
    );
  }
}

class MyScaffold extends StatelessWidget {
  <strong i="7">@override</strong>
  Widget build(BuildContext context) {
    // Material is a conceptual piece of paper on which the UI appears.
    return Material(
      child: Column(
        children: <Widget>[
          MyAppBar(
            title: Text(
              'Example title',
              style: Theme.of(context).primaryTextTheme.title,
            ),
          ),
          Expanded(
            child: Center(
              child: Text('Hello, world!'),
            ),
          ),
        ],
      ),
    );
  }
}

void main() {
  runApp(MaterialApp(
    title: 'My app',
    home: MyScaffold(),
  ));
}

рд╣рдореНрдо, рдереЛрдбрд╝рд╛ рд╕реБрдзрд╛рд░ рд▓реЗрдХрд┐рди рдЗрддрдирд╛ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ ...
рдпрд╣рд╛рдБ рд╡реЗ рдЪреАрдЬреЗрдВ рд╣реИрдВ рдЬреЛ XML рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреВрд░реА рдХреА рдЬрд╛рддреА рд╣реИрдВ:
(1) рдХреЛрдИ рдФрд░ 'рдмрдЪреНрдЪрд╛' рдФрд░ 'рдмрдЪреНрдЪреЗ' рд╕рд╛рдорд╛рди рдирд╣реАрдВ
(2) рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдЙрдкрдХрд░рдгреЛрдВ рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ (рдкрд╛рд░реНрд╕, рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдФрд░ рдкреБрди: рдЙрддреНрдкрдиреНрди)
(3) рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдорд╛рд░реНрдХрдЕрдк рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдХрд╛ рдЖрд╕рд╛рдиреА рд╕реЗ рдкрддрд╛ рдЪрд▓ рдЬрд╛рддрд╛ рд╣реИред рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдПрдХреНрд╕рдПрдордПрд▓ рдХреЗ рдЕрдВрджрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдб рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП '{}' рд╣реИ рдФрд░ рдХреЛрдб рдореЗрдВ рдЖрдкрдХреЗ рдкрд╛рд╕ '{}' рд╣реИред рд╕рд╛рде рд╣реА рд╕рднреА 'рд╕реНрдЯрд╛рдЗрд▓' рдЪреАрдЬреЛрдВ рдХреЛ рдореБрдЦреНрдп рд╕рдВрд░рдЪрдирд╛ рд╕реЗ рдЕрд▓рдЧ рдХрд░ рджреЗрдВред
рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдореВрд▓ рд░реВрдк рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рддрд░реАрдХреЗ рдХрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдорд░реНрдерди рдХрд░ рд░рд╣рд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЖрдк рд╡реИрд╕реЗ рднреА рдЖрдзреЗ рд░рд╛рд╕реНрддреЗ рд╣реИрдВ;)

рд╕реАрд╕реА @ kasperl

(1) рдХреЛрдИ рдФрд░ 'рдмрдЪреНрдЪрд╛' рдФрд░ 'рдмрдЪреНрдЪреЗ' рд╕рд╛рдорд╛рди рдирд╣реАрдВ

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдордЭ рдирд╣реАрдВ рдкрд╛ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рд╡рд╛рдВрдЫрдиреАрдп рдХреНрдпреЛрдВ рд╣реИред "рдмрдЪреНрдЪреЗ" рдФрд░ "рдмрдЪреНрдЪреЗ" рд╡рд┐рд╢реЗрд╖ рдирд╣реАрдВ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд▓рд┐рд╕реНрдЯрдЯрд╛рдЗрд▓ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдЖрдк рд╡рд╣ рдХреИрд╕реЗ рдХрд░реЗрдВрдЧреЗ? IconButton рдореЗрдВ "рдЖрдЗрдХрди" рдпрд╛ MaterialApp рдореЗрдВ "рд╣реЛрдо" рдХреНрдпреЛрдВ рд╣реИрдВ, рдХреБрдЫ рдРрд╕рд╛ рдЬрд┐рд╕реЗ рдЖрдк рдирд╛рдо рджреЗрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдореЗрдВ "рдмрдЪреНрдЪрд╛" рдирд╣реАрдВ? рдпреЗ рддреАрдиреЛрдВ рдХреЗрд╡рд▓ рдордирдорд╛рдирд╛ рддрд░реНрдХ рд╣реИрдВ рдЬреЛ рд╡рд┐рдЬреЗрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛрддреЗ рд╣реИрдВред "рдмрдЪреНрдЪреЗ" рдмрдирд╛рдо "рдШрд░" рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рднреА рдЬрд╛рджреБрдИ рдирд╣реАрдВ рд╣реИред

(2) рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдЙрдкрдХрд░рдгреЛрдВ рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ (рдкрд╛рд░реНрд╕, рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдФрд░ рдкреБрди: рдЙрддреНрдкрдиреНрди)

рдЖрдк рдбрд╛рд░реНрдЯ рдХреЛрдб рдХреЛ рдкрд╛рд░реНрд╕, рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдФрд░ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕реЗ рдЖрд╕рд╛рди рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд╕рд╛рд▓реЛрдВ рдореЗрдВ рдбрд╛рд░реНрдЯ рдЯреАрдо рдЗрд╕рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рдПрдкреАрдЖрдИ рдореБрд╣реИрдпрд╛ рдХрд░рд╛рдПрдЧреАред

(3) рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдорд╛рд░реНрдХрдЕрдк рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдХрд╛ рдЖрд╕рд╛рдиреА рд╕реЗ рдкрддрд╛ рдЪрд▓ рдЬрд╛рддрд╛ рд╣реИред

рдпрд╣ рд╡рд╛рдВрдЫрдиреАрдп рдХреНрдпреЛрдВ рд╣реИ? рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ, рдЗрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА "рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ" рдХреЗ рд░реВрдк рдореЗрдВ рдХреНрдпреЛрдВ рдЧрд┐рдирд╛ рдЬрд╛рдПрдЧрд╛? рдпрд╣ рд╕рдм рд╕рд┐рд░реНрдл рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реИред

рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдПрдХреНрд╕рдПрдордПрд▓ рдХреЗ рдЕрдВрджрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдб рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП '{}' рд╣реИ рдФрд░ рдХреЛрдб рдореЗрдВ рдЖрдкрдХреЗ рдкрд╛рд╕ '{}' рд╣реИред

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рднреЗрдж рдХреЛ рдирд╣реАрдВ рд╕рдордЭрддрд╛ред

рд╕рд╛рде рд╣реА рд╕рднреА 'рд╕реНрдЯрд╛рдЗрд▓' рдЪреАрдЬреЛрдВ рдХреЛ рдореБрдЦреНрдп рд╕рдВрд░рдЪрдирд╛ рд╕реЗ рдЕрд▓рдЧ рдХрд░ рджреЗрдВред

рдЖрдк рдЗрд╕реЗ рдЖрдЬ рд╕реНрдкрдВрджрди рдореЗрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╢реИрд▓реА рдХреЛ рдПрдХ рдЪрд░ рдореЗрдВ рд░рдЦреЗрдВ рдЬреИрд╕реЗ рдЖрдкрдиреЗ рдПрдХреНрд╕рдПрдордПрд▓ рдорд╛рдорд▓реЗ рдореЗрдВ рдХрд┐рдпрд╛ рдерд╛ред

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдордЭ рдирд╣реАрдВ рдкрд╛ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рд╡рд╛рдВрдЫрдиреАрдп рдХреНрдпреЛрдВ рд╣реИред "рдмрдЪреНрдЪреЗ" рдФрд░ "рдмрдЪреНрдЪреЗ" рд╡рд┐рд╢реЗрд╖ рдирд╣реАрдВ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд▓рд┐рд╕реНрдЯрдЯрд╛рдЗрд▓ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдЖрдк рд╡рд╣ рдХреИрд╕реЗ рдХрд░реЗрдВрдЧреЗ? IconButton рдореЗрдВ "рдЖрдЗрдХрди" рдпрд╛ MaterialApp рдореЗрдВ "рд╣реЛрдо" рдХреНрдпреЛрдВ рд╣реИрдВ, рдХреБрдЫ рдРрд╕рд╛ рдЬрд┐рд╕реЗ рдЖрдк рдирд╛рдо рджреЗрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдореЗрдВ "рдмрдЪреНрдЪрд╛" рдирд╣реАрдВ? рдпреЗ рддреАрдиреЛрдВ рдХреЗрд╡рд▓ рдордирдорд╛рдирд╛ рддрд░реНрдХ рд╣реИрдВ рдЬреЛ рд╡рд┐рдЬреЗрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛрддреЗ рд╣реИрдВред "рдмрдЪреНрдЪреЗ" рдмрдирд╛рдо "рдШрд░" рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рджреБрдИ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИред

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

рдпрд╣ рд╡рд╛рдВрдЫрдиреАрдп рдХреНрдпреЛрдВ рд╣реИ? рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ, рдЗрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА "рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ" рдХреЗ рд░реВрдк рдореЗрдВ рдХреНрдпреЛрдВ рдЧрд┐рдирд╛ рдЬрд╛рдПрдЧрд╛? рдпрд╣ рд╕рдм рд╕рд┐рд░реНрдл рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реИред

рдпрд╣ (2) рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЯреВрд▓рдореЗрдХрд░, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЬреАрдпреВрдЖрдИ рдмрд┐рд▓реНрдбрд░реЛрдВ рдХреЗ рдЬреАрд╡рди рдХреЛ рдмрд╣реБрдд рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЙрдиреНрд╣реЗрдВ рдбрд╛рд░реНрдЯ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ; рд▓реЗрдХрд┐рди рдпрд╣ рдХреЛрдб рдХреЛ рдкрдврд╝рдирд╛ рднреА рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рднреЗрдж рдХреЛ рдирд╣реАрдВ рд╕рдордЭрддрд╛ред

рдПрдХреНрд╕рдПрдордПрд▓ рдХрд╛ рдкреНрд░рд╛рд░реВрдк рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ рдЗрд╕рд▓рд┐рдП рдЬрдм рдЖрдк '{}' рджреЗрдЦрддреЗ рд╣реИрдВ рддреЛ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдбрд╛рд░реНрдЯ рдореЗрдВ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреА рдЧрдгрдирд╛ рдХрд░ рд░рд╣рд╛ рд╣реИред рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдХреЗ рд▓рд┐рдП рднреА, рдЬрдм рдбрд╛рд░реНрдЯ рдХреЛрдб рдкрдврд╝рддреЗ рд╣реИрдВ рдФрд░ рдЖрдк рджреЗрдЦрддреЗ рд╣реИрдВ ') рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ XML рдорд╛рд░реНрдХрдЕрдк рд╕реЗ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдкрджрд╛рдиреБрдХреНрд░рдо рдмрдирд╛рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрдВрддрд┐рдо рдПрдХреНрд╕рдПрдордПрд▓ рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЗрдВ рдореИрдВ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдкрд╛рд░рд┐рдд рдХрд░рдиреЗ рд╕реЗ рдмрдЪреВрдВрдЧрд╛ рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдиреАрдЪреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдмрд╛рд▓ рдЯреИрдЧ рдмрдирд╛рдЙрдВрдЧрд╛:

this...
          <MyAppBar>
             <Title style={Theme.of(context).primaryTextTheme.title}>  
                 Example title
             </Title>
          </MyAppBar>

instead of this...
          <MyAppBar
             title={<Text 
               text='Example title'
               style={Theme.of(context).primaryTextTheme.title},
             />}
          />

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

рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдХреБрдЫ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реА рдХреНрдпреЛрдВ? рдФрд░ рдЖрдк рдЙрди рдорд╛рдорд▓реЛрдВ рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рджреЛ рдмрдЪреНрдЪреЗ рд╕реНрд▓реЙрдЯ рд╣реИрдВ, рдЬреИрд╕реЗ ListItem? рдПрдХреНрд╕рдПрдордПрд▓-рдИрд╢ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдмрд╕ рдЗрд╕реЗ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдВрднрд╛рд▓рдиреЗ рдореЗрдВ рдкреНрд░рддреАрдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореБрдЭреЗ рд╕рдЪ рдореЗрдВ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдХрдо рдмреЙрдпрд▓рд░рдкреНрд▓реЗрдЯ рд╣реИред

рддреБрд▓рдирд╛ рдХрд░рдирд╛:

   <Container style={style}>
      <Row>
        <IconButton
            icon={<Icon name={Icons.menu}/>}
            tooltip='Navigation menu'
            onPressed={null}
        />
        <Expanded> {title} </Expanded>  
      </Row>
    </Container>
   Container(style: style,
      child: Row(
        children: [
          IconButton(
            icon: Icon(Icons.menu),
            tooltip: 'Navigation menu',
            onPressed: null,
          ),
          Expanded(child: title),
        ],
      ),
    )

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

рдПрдХреНрд╕рдПрдордПрд▓ рдХреЗ рд╕рд╛рде рднреА рдЖрдк рдпрд╣ рдХреИрд╕реЗ рд╕реНрдкрд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд░реЛ рд╢реВрдиреНрдп, рдПрдХ рдпрд╛ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрдЪреНрдЪреЗ рд▓реЗ рд╕рдХрддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рдХреЗрдВрджреНрд░ рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рдПрдХ рдмрдЪреНрдЪрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП? рдЕрдЧрд░ рдХреЛрдИ рдРрд╕рд╛ рдХрд░реЗ рддреЛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛ ?:

   <Center> <Test/> <Test/> </Center>

рдпрд╣ (2) рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЯреВрд▓рдореЗрдХрд░, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЬреАрдпреВрдЖрдИ рдмрд┐рд▓реНрдбрд░реЛрдВ рдХреЗ рдЬреАрд╡рди рдХреЛ рдмрд╣реБрдд рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЙрдиреНрд╣реЗрдВ рдбрд╛рд░реНрдЯ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ;

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

рд▓реЗрдХрд┐рди рдпрд╣ рдХреЛрдб рдХреЛ рдкрдврд╝рдирд╛ рднреА рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред

рдореИрдВ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдЖрд╢реНрд╡рд╕реНрдд рдирд╣реАрдВ рд╣реВрдВ рдХрд┐ рдпрд╣рд╛рдВ XMLy рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдкрдврд╝рдирд╛ рдЖрд╕рд╛рди рд╣реИред рдПрдХ рдмрд╛рд░ рдЬрдм рдЖрдк рдХреБрдЫ рдмрд┐рд▓реНрдб рдлрд╝рдВрдХреНрд╢рдВрд╕ рдкрдврд╝ рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЬрд▓реНрджреА рд╕реЗ рдиреЗрд╕реНрдЯреЗрдб рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдЕрднреНрдпрд╕реНрдд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред

рдПрдХреНрд╕рдПрдордПрд▓ рдХрд╛ рдкреНрд░рд╛рд░реВрдк рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ рдЗрд╕рд▓рд┐рдП рдЬрдм рдЖрдк '{}' рджреЗрдЦрддреЗ рд╣реИрдВ рддреЛ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдбрд╛рд░реНрдЯ рдореЗрдВ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреА рдЧрдгрдирд╛ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХреНрд╕рдПрдордПрд▓ рдирд╣реАрдВ рд╣реИ, рд╣реИ рдирд╛? рдпрд╣ рдПрдХреНрд╕рдПрдордПрд▓ рдХрд╛ рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рд╣реИред рдХреНрдпрд╛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдирд┐рдпрдо рд╣реИрдВ? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреНрдпрд╛ рдпрд╣ рдорд╛рдиреНрдп рд╣реИ?

  <Test name={describe("}")}>

рдбрд╛рд░реНрдЯ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд┐рдП рдмрд┐рдирд╛ рдпрд╣ рдХреИрд╕реЗ рдкрддрд╛ рдЪрд▓реЗрдЧрд╛ рдХрд┐ рдкрд╣рд▓рд╛ "}" рд╡рд┐рд╢реЗрд╖рддрд╛ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рдЕрдВрдд рдирд╣реАрдВ рд╣реИ?

рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдХреЗ рд▓рд┐рдП рднреА, рдЬрдм рдбрд╛рд░реНрдЯ рдХреЛрдб рдкрдврд╝рддреЗ рд╣реИрдВ рдФрд░ рдЖрдк рджреЗрдЦрддреЗ рд╣реИрдВ ') рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ XML рдорд╛рд░реНрдХрдЕрдк рд╕реЗ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдкрджрд╛рдиреБрдХреНрд░рдо рдмрдирд╛рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

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

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрдВрддрд┐рдо рдПрдХреНрд╕рдПрдордПрд▓ рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЗрдВ рдореИрдВ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдкрд╛рд░рд┐рдд рдХрд░рдиреЗ рд╕реЗ рдмрдЪреВрдВрдЧрд╛ рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдиреАрдЪреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдмрд╛рд▓ рдЯреИрдЧ рдмрдирд╛рдЙрдВрдЧрд╛:

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдордЭ рдирд╣реАрдВ рдкрд╛ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдЖрдк рдпрд╣рд╛рдВ рдХреНрдпрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджреЗ рд░рд╣реЗ рд╣реИрдВред рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдореИрдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реВрдВ, рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЧрдард┐рдд рдПрдХреНрд╕рдПрдордПрд▓ рдирд╣реАрдВ рд╣реИред рдХреНрдпрд╛ рдЖрдк рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдЬрд┐рд╕ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рд╡рд╣ рдХреНрдпрд╛ рд╣реИ рдФрд░ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, "рдЯреЗрдХреНрд╕реНрдЯ" рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдЧрд╛рдпрдм рд╣реЛ рдЧрдпрд╛ рд▓рдЧрддрд╛ рд╣реИ; рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреИрд╕реЗ рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐

рдПрдХ рдЯреЗрдХреНрд╕реНрдЯ рд╡рд┐рдЬреЗрдЯ рдмрдирд╛рддрд╛ рд╣реИ? <pi="37">рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рдпрджрд┐ рдореИрдВ рд░рдХреНрд╖рд╛рддреНрдордХ рдпрд╛ рдЖрдХреНрд░рд╛рдордХ рд▓рдЧрддрд╛ рд╣реВрдВред :-) рдпрд╣ рдПрдХ рдРрд╕рд╛ рд╡рд┐рд╖рдп рд╣реИ рдЬреЛ рдХрдИ рдмрд╛рд░ рд╕рд╛рдордиреЗ рдЖрдпрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдХрднреА рдХрд┐рд╕реА рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рдорд╛рдорд▓реЗ рдкрд░ рдмрд╣рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдпрд╣ рдмрд╛рддрдЪреАрдд рдореБрдЭреЗ рд╕рд┐рдЦрд╛рдиреЗ рдореЗрдВ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд▓рдЧ рд░рд╣реА рд╣реИ рдХрд┐ рдЕрдиреБрд░реЛрдз рдХреЗ рдкреАрдЫреЗ рддрд░реНрдХ рдХреНрдпрд╛ рд╣реИред рдХреГрдкрдпрд╛ рдореЗрд░реЗ рддрд░реНрдХрдкреВрд░реНрдг рд▓рд╣рдЬреЗ рдХреЛ рдЦрд╛рд░рд┐рдЬ рдХрд░рдиреЗ рдХреЗ рд░реВрдк рдореЗрдВ рди рд▓реЗрдВ, рдореБрдЭреЗ рдпрд╣рд╛рдВ рдЖрдкрдХреЗ рдЗрдирдкреБрдЯ рдореЗрдВ рдмрд╣реБрдд рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реИред</p>

рджреЗрдЦрд┐рдП, рдЖрдк рдореЗрд░реА рд╣рд░ рдмрд╛рдд рдореЗрдВ рдорд┐рд▓рд╛рд╡рдЯ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдмрд╛рддрдЪреАрдд рдХрд╣реАрдВ рдирд╣реАрдВ рдЬрд╛ рд░рд╣реА рд╣реИред рдХрд╛рдиреВрдиреА рд╢рдмреНрджреЛрдВ рдореЗрдВ рдЖрдк "рдЧрд╡рд╛рд╣ рдХреЛ рдмрджрдирд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ"ред

рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдЬрд╛рдирдиреЗ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ рдХрд┐ JSX рдЧрд░реНрдо рдХреНрдпреЛрдВ рд╣реИ, рддреЛ рдмрд╕ "рд░рд┐рдПрдХреНрдЯ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓" рдХреЗ рд▓рд┐рдП Google рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдкрд┐рдЫрд▓реЗ 2 рд╡рд░реНрд╖реЛрдВ рд╕реЗ рд░рд┐рдПрдХреНрдЯ рдкрд░ рд╕рднреА рд▓реЗрдЦ JSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рд░рд┐рдПрдХреНрдЯ рдореЗрдВ рдШрдЯрдХ рдкрджрд╛рдиреБрдХреНрд░рдо рдмрдирд╛рдиреЗ рдХрд╛ рдореВрд▓ рддрд░реАрдХрд╛ (рдЬреЛ рдлрд╝реНрд▓рдЯрд░ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рддрд░реАрдХреЗ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ) рдХрд╛ рдлрд┐рд░ рдХрднреА рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдХреНрдпреЛрдВрдХрд┐ JSX рдкрд╕рдВрджреАрджрд╛ рддрд░реАрдХрд╛ (рд╕рд░реНрд╡реЛрддреНрддрдо рдЕрднреНрдпрд╛рд╕) рдмрди рдЧрдпрд╛ред

https://facebook.github.io/react/tutorial/tutorial.html
https://facebook.github.io/react-native/docs/flatlist.html

рдПрдХ рдФрд░ рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдиреЗ JSX рдХреЛ рднреА рдЕрдкрдирд╛рдпрд╛ рд╣реИ:
https://www.typescriptlang.org/docs/handbook/jsx.html

рдЖрдк рдпрд╣ рд╕рдордЭрдиреЗ рдореЗрдВ рдЕрд╕рдлрд▓ рд░рд╣реЗ рдХрд┐ рдПрдХреНрд╕рдПрдордПрд▓ рдкрд╛рд░реНрд╕рд┐рдВрдЧ ('{}' рдХреЛ рдареАрдХ рд╕реЗ рдЫреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рдХреЛрдб рдХреЗ рд╕рд╛рде) рдбрд╛рд░реНрдЯ рдЬреИрд╕реА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдкрд░рд┐рдорд╛рдг рдХреЗ рдЖрджреЗрд╢ рд╕рд░рд▓ рд╣реИрдВред рдпрд╣ рдПрдХ рддрдереНрдп рд╣реИред рдЖрдк рдорд╛рди рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдЙрдкрдХрд░рдг рдирд┐рд░реНрдорд╛рддрд╛ рдЕрдкрдиреЗ рд╡рд┐рдХрд╛рд╕ рдкрд░ рдбрд╛рд░реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рдорд╛рдорд▓рд╛ рдирд╣реАрдВ, рдЗрдВрдЯреЗрд▓рд┐рдЬ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдЙрдирдХреЗ рдЖрдИрдбреАрдИ рдкрд░ рдХреЛрдЯрд▓рд┐рди рдФрд░ рдЬрд╛рд╡рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рдбрд╛рд░реНрдЯ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ (рд╡реЗ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓рд╛ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рднрд╛рд╖рд╛ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдореЗрдВ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рд╣реИрдВ; рдмрд╛рдХреА рд╕рднреА рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрдШрд░реНрд╖ рдХрд░реЗрдВрдЧреЗ рдХрд┐рд╕реА рдЕрдиреНрдп рднрд╛рд╖рд╛ рд╕реЗ рдбрд╛рд░реНрдЯ рдкрд╛рд░реНрд╕ рдХрд░реЗрдВ)ред

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

рдЙрди рдЪреАрдЬреЛрдВ рдХреЛ рдЪреБрдирдирд╛ рдмрдВрдж рдХрд░реЗрдВ рдЬреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рд╕рднреА рд╕рдВрджреЗрд╣реЛрдВ рдХрд╛ рдЙрддреНрддрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдмрд╕ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдЬрд╛рдиреЗрдВ рдХрд┐ JSX рдореЗрдВ рдЗрд╕реЗ рдХреИрд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдореЗрд░реЗ рдкрд╛рд╕ рдпрд╣рд╛рдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рдордп рдирд╣реАрдВ рд╣реИред

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

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


рдореБрдЭреЗ рдЗрд╕рдореЗрдВ рдХреЛрдИ рд╕рдВрджреЗрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ JSX "рд╣реЙрдЯ" рд╣реИред рд░рд┐рдПрдХреНрдЯ рдореЗрдВ, рдЧреИрд░-рдЬреЗрдПрд╕рдПрдХреНрд╕ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЗрд╕ рдореБрджреНрджреЗ рдореЗрдВ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╡реИрдХрд▓реНрдкрд┐рдХ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдЦрд░рд╛рдм рд╣реИ (рд╡рд╣ рдЬреЛ рд╣рдорд╛рд░реЗ рд╡рд░реНрддрдорд╛рди рдХреЛрдб рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди "рдирдП" рдФрд░ "рдХреЙрдиреНрд╕реНрдЯ" рдХреАрд╡рд░реНрдб рдХреЗ рдмрд┐рдирд╛)ред рдореИрдВ рдпрд╣ рд╕рдордЭрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдХреНрдпрд╛ рд░рд┐рдПрдХреНрдЯ рдореЗрдВ JSX рдХреЗ "рд╣реЙрдЯ" рд╣реЛрдиреЗ рдХреЗ рд╕рдорд╛рди рдХрд╛рд░рдг рд╕реНрдкрдВрджрди рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВред

JSX рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ, 2012 рдореЗрдВ рдореИрдВ E4H рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдерд╛, рдФрд░ рдЙрд╕рд╕реЗ рдкрд╣рд▓реЗ рднреА E4X рдерд╛ред рджреЛрдиреЛрдВ рдкреНрд░рдпрд╛рд╕ рдорд░ рдЧрдПред рдЗрд╕рд▓рд┐рдП рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рд╣рдо рд╕рдордЭреЗрдВ рдХрд┐ JSX рдмрдирд╛рдо рдЕрдиреНрдп рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓реЛрдЧ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВред

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

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

рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдХреНрдпреЛрдВ рдлрд╛рдпрджреЗрдордВрдж рд╣реИ?

рдлрд╝реНрд▓рдЯрд░ рдРрдкреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдХреНрд░реЙрд▓ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рдмрд╣реБрдд рд╕реНрдкрд╖реНрдЯ рд╣реИ рдЬрд╣рд╛рдВ рдмрд┐рд▓реНрдб рдлрд╝рдВрдХреНрд╢рди рд╣реИрдВ (рд╡реЗ рд╡рд┐рд╢рд╛рд▓ рдиреЗрд╕реНрдЯреЗрдб рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рд╣реИрдВ)ред рдпрд╣ "рдШреЛрд╖рдгрд╛рддреНрдордХ рдорд╛рд░реНрдХрдЕрдк" рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╣реИ рдЬреЛ "рдХреЛрдб" рд╕реЗ рдЕрд▓рдЧ рд╣реЛрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ?

рдЙрди рдЪреАрдЬреЛрдВ рдХреЛ рдЪреБрдирдирд╛ рдмрдВрдж рдХрд░реЗрдВ рдЬреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рд╕рднреА рд╕рдВрджреЗрд╣реЛрдВ рдХрд╛ рдЙрддреНрддрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдмрд╕ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдЬрд╛рдиреЗрдВ рдХрд┐ JSX рдореЗрдВ рдЗрд╕реЗ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рд╛ рдЧрдпрд╛ред рдореЗрд░реЗ рдкрд╛рд╕ рдпрд╣рд╛рдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рдордп рдирд╣реАрдВ рд╣реИред

рдЬрд╣рд╛рдБ рддрдХ рдореИрдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реВрдБ, JSX рдЙрди рдЪреАрдЬрд╝реЛрдВ рдХреЛ рд╣реИрдВрдбрд▓ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рдкреВрдЫ рд░рд╣рд╛ рдерд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд░рд┐рдПрдХреНрдЯ рдореЗрдВ рдЪрд╛рдЗрд▓реНрдб рд╕реНрд▓реЙрдЯ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдирд╣реАрдВ рд╣реИред рд╕рдмрд╕реЗ рдирдЬрд╝рджреАрдХреА рдЪреАрдЬрд╝ рдЬреЛ рдореБрдЭреЗ рдорд┐рд▓ рд╕рдХрддреА рд╣реИ, рд╡рд╣ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬреЛ рд╡реЗ JS рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдХрд░ рдЙрд╕рдХреЗ рдЕрдВрджрд░ JSX рдкрд░ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдФрд░ рдорд╛рд░реНрдХрдЕрдк рднрд╛рд╖рд╛ рджреЛрдиреЛрдВ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореИрдВ рдпрд╣ рд╕рдордЭрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдХреНрдпрд╛ рд░рд┐рдПрдХреНрдЯ рдореЗрдВ JSX рдХреЗ "рд╣реЙрдЯ" рд╣реЛрдиреЗ рдХреЗ рд╕рдорд╛рди рдХрд╛рд░рдг рд╕реНрдкрдВрджрди рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВред

рдЬреА рд╣рд╛рдВ, рдпрд╣рд╛рдВ рднреА рдареАрдХ рдпрд╣реА рдмрд╛рдд рд▓рд╛рдЧреВ рд╣реЛрддреА рд╣реИред рд╡рд░реНрддрдорд╛рди рддрд░реАрдХрд╛ рдЖрдкрдХреЛ рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдпрд╣реА рдПрдХрдорд╛рддреНрд░ рд╡рд┐рдХрд▓реНрдк рд╣реИред рд▓реЛрдЧреЛрдВ рдХреЛ рджреВрд╕рд░рд╛ рд╡рд┐рдХрд▓реНрдк рджреЗрдВ рдФрд░ рд╡рд╣реА рд╣реЛрдЧрд╛ред

E4X рдорд░рд╛ рдпрд╛ рдирд╣реАрдВ рдпрд╣ рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдХреБрдЫ рднреА рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд░рд╣рддрд╛ рд╣реИред рдореИрдВрдиреЗ E4X рдХреЗ рд╕рд╛рде рдПрдХреНрд╢рдирд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рд╕реЛрдЪрд╛ рд╣реИ рдХрд┐ Adobe рдиреЗ рд╡рд╣рд╛рдВ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИред рдлрд╝реНрд▓рдЯрд░ рдПрдХ рддрд░рд╣ рд╕реЗ рдлреНрд▓реЗрдХреНрд╕ рдРрдкреНрд╕ рдХреЗ рд╕рд╛рде рдПрдбреЛрдм рдлреНрд▓реИрд╢ рдХрд╛ рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рд╣реИред

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

рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдПрдХ рдЕрдирд┐рд╡рд╛рд░реНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдорд╛рд░реНрдХрдЕрдк рднрд╛рд╖рд╛ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдирд╛ рдЫреЛрдЯрд╛ рд╣реИред

рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдХреНрдпреЛрдВ рдлрд╛рдпрджреЗрдордВрдж рд╣реИ?

рдХреЛрдб рдкрдардиреАрдпрддрд╛ рдФрд░ рд╕рд░рд▓рддрд╛ рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ рдЕрдиреНрдп рд▓рд╛рднреЛрдВ рдХрд╛ рдПрдХ рдкреВрд░рд╛ рд╕рдореВрд╣ рдЪрд▓рд╛рддреА рд╣реИред

рдлрд╝реНрд▓рдЯрд░ рдРрдкреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдХреНрд░реЙрд▓ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рдмрд╣реБрдд рд╕реНрдкрд╖реНрдЯ рд╣реИ рдЬрд╣рд╛рдВ рдмрд┐рд▓реНрдб рдлрд╝рдВрдХреНрд╢рди рд╣реИрдВ (рд╡реЗ рд╡рд┐рд╢рд╛рд▓ рдиреЗрд╕реНрдЯреЗрдб рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рд╣реИрдВ)ред рдпрд╣ "рдШреЛрд╖рдгрд╛рддреНрдордХ рдорд╛рд░реНрдХрдЕрдк" рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╣реИ рдЬреЛ "рдХреЛрдб" рд╕реЗ рдЕрд▓рдЧ рд╣реЛрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ?

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

рдЬрд╣рд╛рдБ рддрдХ рдореИрдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реВрдБ, JSX рдЙрди рдЪреАрдЬрд╝реЛрдВ рдХреЛ рд╣реИрдВрдбрд▓ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рдкреВрдЫ рд░рд╣рд╛ рдерд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд░рд┐рдПрдХреНрдЯ рдореЗрдВ рдЪрд╛рдЗрд▓реНрдб рд╕реНрд▓реЙрдЯ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдирд╣реАрдВ рд╣реИ

рдпрд╣ рдЗрд╕реЗ рдареАрдХ рд╕реЗ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИ, рдЖрдк рдмрд╕ рдпрд╣ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИред рддреЛ рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реБрдП рдмрд╕ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдпрд╣рд╛рдВ рдкреНрд░рд╢реНрди рдореЗрдВ рд░рдЦреЗрдВ рдФрд░ рдореИрдВ рдЖрдкрдХреЛ рд╡рд╣ рдкреНрд░рджрд╛рди рдХрд░реВрдВрдЧрд╛ рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ JSX рд╕рдВрд╕реНрдХрд░рдг рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

  new ListTile(
    title: new Text('CineArts at the Empire',
        style: new TextStyle(fontWeight: FontWeight.w500, fontSize: 20.0)),
    subtitle: new Text('85 W Portal Ave'),
    leading: new Icon(
      Icons.theaters,
      color: Colors.blue[500],
    ),
  ),
  <ListTile>
    <title> 
      <Text style={{fontWeight: FontWeight.w500, fontSize: 20.0}}>
         CineArts at the Empire
      </Text>
    </title>
    <subtitle>
      <Text>85 W Portal Ave</Text>
    </subtitle>
    <leading>
      <Icon data={Icons.theaters} color={Colors.blue[500]}/>
    </leading>
  </ListTile>,

рдпрд╣ рдбрд╛рд░реНрдЯ рд╕рдВрд╕реНрдХрд░рдг рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд▓рдВрдмрд╛ рджрд┐рдЦрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдореИрдВ рд╕рдм рдХреБрдЫ рд╕рдорд╛рди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ рд░рдЦ рд╕рдХрддрд╛ рдерд╛ред рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдПрдХ рдЖрдИрдбреАрдИ/рд╕рдВрдкрд╛рджрдХ рд╡реИрд╕реЗ рднреА рдЗрди рдПрдХреНрд╕рдПрдордПрд▓ рдиреЛрдбреНрд╕ рдХреЛ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдФрд░ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП '+' рдФрд░ '-' рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рд░рд┐рдПрдХреНрдЯ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдлрд╝реНрд▓рдЯрд░ рдХреЛ рдкрд░рд┐рдЪрд┐рдд рдмрдирд╛рдПрдВ рдФрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдлрд╝реНрд▓рдЯрд░ рдХреЗ рд▓рд┐рдП рдирдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдПрдХ рд╕рдореВрд╣ рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдореМрдХрд╛ рд╣реИред

E4X рдорд░рд╛ рдпрд╛ рдирд╣реАрдВ рдпрд╣ рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдХреБрдЫ рднреА рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд░рд╣рддрд╛ рд╣реИред

рд╡рд╣ рдорд░рд╛ рдпрд╛ рдирд╣реАрдВ, рдпрд╣ рдореБрджреНрджрд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╡рд╣ рдорд░рд╛ред рдХреНрдпрд╛ рдпрд╣ рдорд░ рдЧрдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдиреЗ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рджрд┐рдпрд╛ рдЬреЛ рд▓реЛрдЧ рдЪрд╛рд╣рддреЗ рдереЗ? рдХреНрдпрд╛ рдпрд╣ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдореБрджреНрджреЛрдВ рдХреЗ рдХрд╛рд░рдг рдорд░ рдЧрдпрд╛? рдХреНрдпрд╛ рдпрд╣ рдкреЗрдЯреЗрдВрдЯ рдореБрджреНрджреЛрдВ рдХреЗ рдХрд╛рд░рдг рдорд░ рдЧрдпрд╛? рдХреНрдпрд╛ рдпрд╣ рдмрд╣реБрдд рдЬрд▓реНрджреА рдерд╛? рдмрд╣реБрдд рджреЗрд░ рд╣реЛ рдЧрдИ? рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд┐рдЫрд▓реЗ рдЕрдиреБрднрд╡реЛрдВ рд╕реЗ рд╕рдмрдХ рд╕реАрдЦрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдЬрд╣рд╛рдВ JSX рд╕рдлрд▓ рд╣реБрдЖ рд╣реИ, рд╡рд╣рд╛рдВ E4X рдФрд░ E4H рдХреНрдпреЛрдВ рд╡рд┐рдлрд▓ рд╣реЛ рдЧрдП?

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

рдЕрдкрдиреЗ рд╡рд┐рд╢рд╛рд▓ рдиреЗрд╕реНрдЯреЗрдб рднрд╛рд╡реЛрдВ рдкрд░ рдХреНрдпрд╛ рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рд╕рдВрд░рдЪрдирд╛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ?

рд╣рд╛рдВ, рдХрдо рд╕реЗ рдХрдо рдПрдХреНрд╕рдПрдордПрд▓ рдХреЗ рд╕рд╛рде рдЬрд┐рддрдиреА рдЖрд╕рд╛рдиреА рд╕реЗред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореБрдЭреЗ рдПрдХреНрд╕рдПрдордПрд▓ рдмрд╣реБрдд рд╡рд░реНрдмреЛрдЬрд╝ рд▓рдЧрддрд╛ рд╣реИ рдФрд░ рдпрд╣ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдЦрд░рд╛рдм рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреЗ рдЕрднреНрдпрд╕реНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╣реИред

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

рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдПрдХ рдЕрдирд┐рд╡рд╛рд░реНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдорд╛рд░реНрдХрдЕрдк рднрд╛рд╖рд╛ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдирд╛ рдЫреЛрдЯрд╛ рд╣реИред

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

рдХреЛрдб рдкрдардиреАрдпрддрд╛ рдФрд░ рд╕рд░рд▓рддрд╛ рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ рдЕрдиреНрдп рд▓рд╛рднреЛрдВ рдХрд╛ рдПрдХ рдкреВрд░рд╛ рд╕рдореВрд╣ рдЪрд▓рд╛рддреА рд╣реИред

рдпрджрд┐ рдпрд╣ рдореБрдЦреНрдп рд▓рд╛рдн рд╣реИ рддреЛ рдпрд╣ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬрд┐рд╕рдХрд╛ рд╣рдо рдкрд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рдЙрди рдЗрдВрдЬреАрдирд┐рдпрд░реЛрдВ рдХрд╛ рдорд┐рд╢реНрд░рдг рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдПрдЪрдЯреАрдПрдордПрд▓, рд░рд┐рдПрдХреНрдЯ, рдЖрдИрдУрдПрд╕ рдХреЛрдб, рдПрдВрдбреНрд░реЙрдЗрдб рдХреЛрдб, рдлрд╝реНрд▓рдЯрд░, рдХрдорд╛рдВрдб-рд▓рд╛рдЗрди рдРрдк рдЖрджрд┐ рд▓рд┐рдЦрдиреЗ рдХреЗ рдЖрджреА рд╣реИрдВ, рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рд╡рд┐рднрд┐рдиреНрди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рдкреНрд░рд╕реНрддреБрдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЙрдирд╕реЗ рдпрд╣ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реЗрдВ рдХрд┐ рд╡реЗ рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реИрдВред рдкрд░рд┐рдгрд╛рдореА UI рдЬреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛ред рдлрд┐рд░ рд╣рдо рдорд╛рдк рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреМрди рд╕рд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕рд░реНрд╡реЛрддреНрддрдо рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред @InMatrix рдпрд╣ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдПрдиреАрдореЗрд╢рди рдХреЗ рдХрд╛рдо рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?

рдХреНрдпрд╛ рдЗрд╕ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдЕрдиреНрдп рдЙрдкрдХрд░рдгреЛрдВ рдЬреИрд╕реЗ рдЬреАрдпреВрдЖрдИ рдмрд┐рд▓реНрдбрд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдЖрд╕рд╛рдиреА рд╕реЗ рд╣реЗрд░рдлреЗрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?

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

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

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

new ListView.builder(
  padding: new EdgeInsets.all(8.0),
  itemExtent: 20.0,
  itemBuilder: (BuildContext context, int index) {
    return new Text('entry $index');
  },
)

рдпрд╣ рдЗрд╕реЗ рдареАрдХ рд╕реЗ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИ, рдЖрдк рдмрд╕ рдпрд╣ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИред

рдореЗрд░рд╛ рдорддрд▓рдм рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ JSX рдерд╛ред рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдБ рдХрд┐ рдЖрдкрдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕ рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХрд╛ рдПрдХ рдкреВрд░реНрдгрддрдГ рдорд╛рдиреНрдп рддрд░реАрдХрд╛ рд╣реЛрдЧрд╛ред

рдореИрдВрдиреЗ рдПрдбреЛрдм рдХреЗ рдлреНрд▓реЗрдХреНрд╕ рдПрд╕рдбреАрдХреЗ рдкрд░ рдХрд╛рдо рдХрд┐рдпрд╛, рдЬрд┐рд╕рдиреЗ рдкрд┐рдЫрд▓реЗ рдХреБрдЫ рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдПрдХреНрд╕рдПрдордПрд▓ рдорд╛рд░реНрдХрдЕрдк рдФрд░ рдПрдХреНрд╢рдирд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЬреЛрдбрд╝рд╛, рдЬреЛ рдЙрддреНрдкрд╛рдж рдПрдбреЛрдм рдореЗрдВ рдореМрдЬреВрдж рдерд╛ред рдореИрдВ UI рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рд░реНрдХрдЕрдк рдХреА рдЕрдкреАрд▓ рдХреЛ рд╕рдордЭрддрд╛ рд╣реВрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рдХреБрдЫ рдХрдорд┐рдпрд╛рдВ рднреА рдпрд╛рдж рд╣реИрдВ:

  • рдлреНрд▓реЗрдХреНрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд┐рдЬрд╝реБрдЕрд▓реНрд╕ рдХреЛ рдорд╛рд░реНрдХрдЕрдк рдФрд░ рдХреЛрдб рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдореБрдЭреЗ рдпрд╛рдж рд╣реИ, рдХреЛрдб рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреБрдирд┐рдпрд╛ рдХреЗ рдмрдбрд╝реЗ рдРрдкреНрд╕ рдореЗрдВ рд╣рд╛рд╡реА рд╣реЛ рдЧрдпрд╛ рдерд╛ред рдорд╛рд░реНрдХрдЕрдк рдФрд░ рдХреЛрдб рдХреЗ рдЬрдЯрд┐рд▓ рд╕рдВрдХрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдРрдкреНрд╕ рдХреЗ рд▓рд┐рдП рдкрдардиреАрдпрддрд╛ рдЖрд╡рд╢реНрдпрдХ рд░реВрдк рд╕реЗ рдПрдХ рд▓рд╛рдн рдирд╣реАрдВ рд╣реИред
  • "рдлреНрд▓реЗрдХреНрд╕ рдмрд┐рд▓реНрдбрд░" рдЖрдИрдбреАрдИ рдХреЛ рдЙрди рдРрдкреНрд╕ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдерд╛ рдЬреЛ рдорд╛рд░реНрдХрдЕрдк рдФрд░ рдХреЛрдб рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдП рдЧрдП рдереЗред рдЗрд╕рд╕реЗ IDE рдХреЛ рдмрдирд╛рдирд╛ рдФрд░ рдмрдирд╛рдП рд░рдЦрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рдЧрдпрд╛ред рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рдЗрд╕реЗ рдПрдХ рдПрдХреНрд╢рдирд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЯреВрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрд╛ред
  • рдПрдХреНрд╕рдПрдордПрд▓ "рдХрдВрдкрд╛рдЗрд▓рд░" рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдФрд░ рд░рдЦрд░рдЦрд╛рд╡ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмреЛрдЭ рдерд╛ рдЬрд┐рд╕рдиреЗ рдЗрдВрдЬреАрдирд┐рдпрд░реЛрдВ рдХреА рдПрдХ рдЯреАрдо рдХреЛ рдкреВрд░реНрдгрдХрд╛рд▓рд┐рдХ рд░реВрдк рд╕реЗ рд╡реНрдпрд╕реНрдд рд░рдЦрд╛ред рдХрдВрдкрд╛рдЗрд▓рд░ рдФрд░ рдЯреВрд▓рдХрд┐рдЯ рдХреЛ рд▓реЙрдХрд╕реНрдЯреЗрдк рдореЗрдВ рд░рдЦрдиреЗ рд╕реЗ рд╕рдордЧреНрд░ рдПрд╕рдбреАрдХреЗ рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдзреАрдорд╛ рд╣реЛ рдЧрдпрд╛ред

рд╡рд░реНрд╖реЛрдВ рд╣реЛ рдЧрдП рд╣реИрдВ рдФрд░ рдореБрдЭреЗ рдЕрдм рд╕рднреА рд╡рд┐рд╡рд░рдг рдпрд╛рдж рдирд╣реАрдВ рдЖ рд░рд╣реЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдореЗрд░рд╛ рд╕рдордЧреНрд░ рдкреНрд░рднрд╛рд╡ рдпрд╣ рд╣реИ рдХрд┐ рдорд╛рд░реНрдХрдЕрдк рдФрд░ рдХреЛрдб рдХреЗ рд╕рдВрдпреЛрдЬрди рдХреЗ рд╕рд╛рде UI рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ рдПрдХ рдорд┐рд╢реНрд░рд┐рдд рдмреИрдЧ рд╣реИред

рд╡рд╣ рдорд░рд╛ рдпрд╛ рдирд╣реАрдВ, рдпрд╣ рдореБрджреНрджрд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╡рд╣ рдорд░рд╛ред рдХреНрдпрд╛ рдпрд╣ рдорд░ рдЧрдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдиреЗ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рджрд┐рдпрд╛ рдЬреЛ рд▓реЛрдЧ рдЪрд╛рд╣рддреЗ рдереЗ? рдХреНрдпрд╛ рдпрд╣ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдореБрджреНрджреЛрдВ рдХреЗ рдХрд╛рд░рдг рдорд░ рдЧрдпрд╛? рдХреНрдпрд╛ рдпрд╣ рдкреЗрдЯреЗрдВрдЯ рдореБрджреНрджреЛрдВ рдХреЗ рдХрд╛рд░рдг рдорд░ рдЧрдпрд╛? рдХреНрдпрд╛ рдпрд╣ рдмрд╣реБрдд рдЬрд▓реНрджреА рдерд╛? рдмрд╣реБрдд рджреЗрд░ рд╣реЛ рдЧрдИ? рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд┐рдЫрд▓реЗ рдЕрдиреБрднрд╡реЛрдВ рд╕реЗ рд╕рдмрдХ рд╕реАрдЦрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдЬрд╣рд╛рдВ JSX рд╕рдлрд▓ рд╣реБрдЖ рд╣реИ, рд╡рд╣рд╛рдВ E4X рдФрд░ E4H рдХреНрдпреЛрдВ рд╡рд┐рдлрд▓ рд╣реЛ рдЧрдП?

рдпрд╣ рдорд░ рдЧрдпрд╛ рдХреНрдпреЛрдВрдХрд┐ E4X рдХреЗрд╡рд▓ рдПрдХреНрд╢рдирд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдПрдбреЛрдм рдлреНрд▓реИрд╢/рдлреНрд▓реЗрдХреНрд╕ рдХреЗ рдЕрдВрджрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдПрдбреЛрдм рдиреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдорд╛рд░ рдбрд╛рд▓рд╛ рдерд╛ред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдПрдбреЛрдм рдиреЗ рдЦреБрд▓реЗ рдорд╛рдирдХреЛрдВ рдХреА рджрд┐рд╢рд╛ рдореЗрдВ рджрд┐рд╢рд╛ рдмрджрд▓ рджреА рдЬрд╣рд╛рдВ рд▓реЙрдХ-рдЗрди рдФрд░ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдХреЗ рд╡рд┐рд╕реНрдлреЛрдЯ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЗ рд╕рд╛рде рдХреЛрдИ рдПрдХрд▓ рд╕реНрд░реЛрдд рдкреНрд░рджрд╛рддрд╛ рдирд╣реАрдВ рд╣реИред

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

рдареАрдХ рд╣реИ, рдЕрдЧрд░ рдореИрдВрдиреЗ рдЖрдкрд╕реЗ 2 рдЪреАрдЬреЗрдВ рдорд╛рдВрдЧреАрдВ рдФрд░ рдЖрдкрдиреЗ 3 рдорд╣реАрдиреЗ рдореЗрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдФрд░ рдкрд╣рд▓реА рдЪреАрдЬ рдХрд╛ рдХреЛрдИ рд╡рд┐рдХрд▓реНрдк рд╣реИ, рддреЛ рдореИрдВ рдЖрдкрд╕реЗ рдХреЗрд╡рд▓ рд╡рд╣реА рдкреВрдЫреВрдВрдЧрд╛ рдЬреЛ рдЖрдкрдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдФрд░ рдкрд┐рдЫрд▓реЗ рдбрд┐рд▓реАрд╡рд░реА рдкреНрд░рджрд░реНрд╢рди рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд╕рдВрднрд╡ рд╣реИред

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

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

рдпрджрд┐ рдпрд╣ рдореБрдЦреНрдп рд▓рд╛рдн рд╣реИ рддреЛ рдпрд╣ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬрд┐рд╕рдХрд╛ рд╣рдо рдкрд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рдЙрди рдЗрдВрдЬреАрдирд┐рдпрд░реЛрдВ рдХрд╛ рдорд┐рд╢реНрд░рдг рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдПрдЪрдЯреАрдПрдордПрд▓, рд░рд┐рдПрдХреНрдЯ, рдЖрдИрдУрдПрд╕ рдХреЛрдб, рдПрдВрдбреНрд░реЙрдЗрдб рдХреЛрдб, рдлрд╝реНрд▓рдЯрд░, рдХрдорд╛рдВрдб-рд▓рд╛рдЗрди рдРрдк рдЖрджрд┐ рд▓рд┐рдЦрдиреЗ рдХреЗ рдЖрджреА рд╣реИрдВ, рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рд╡рд┐рднрд┐рдиреНрди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рдкреНрд░рд╕реНрддреБрдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЙрдирд╕реЗ рдпрд╣ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реЗрдВ рдХрд┐ рд╡реЗ рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реИрдВред рдкрд░рд┐рдгрд╛рдореА UI рдЬреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛ред рдлрд┐рд░ рд╣рдо рдорд╛рдк рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреМрди рд╕рд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕рд░реНрд╡реЛрддреНрддрдо рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред @InMatrix рдпрд╣ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдПрдиреАрдореЗрд╢рди рдХреЗ рдХрд╛рдо рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?

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

рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐, рдЖрдк рдПрдХреНрд╕рдПрдордПрд▓ рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рдбрд╛рд░реНрдЯ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд╕рдорд╛рди "рдХреЛрдИ рднреА рд╡реИрдз рдбрд╛рд░реНрдЯ рдХреЛрдб" рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВред

рдЬрд╝рд░реВрд░, рд▓реЗрдХрд┐рди GUI рдмрд┐рд▓реНрдбрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рдХреЗрд╡рд▓ рдмрд╛рдЗрдЯреНрд╕ рдХрд╛ рдПрдХ рдмреНрд▓реЙрдХ рд╣реИ рдЬрд┐рд╕реЗ рдЫреВрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдФрд░ рдЗрд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рдЫреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ рдЗрд╕реЗ рдбрд┐рдЬрд╛рдЗрди/рдХреЛрдб рдЗрдВрдЯрд░рдЪреЗрдВрдЬрдмрд┐рд▓рд┐рдЯреА рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рд╕рдВрднрд╡ рдмрдирд╛рдирд╛ред

new ListView.builder(
  padding: new EdgeInsets.all(8.0),
  itemExtent: 20.0,
  itemBuilder: (BuildContext context, int index) {
    return new Text('entry $index');
  },
)
let style = {
  padding: new EdgeInsets.all(8.0),
  itemExtent: 20.0
};

<ListView.builder style={style}>
  {(context, index) => <Text> entry {index} </Text>}
</ListView.builder>

рдореИрдВрдиреЗ рдПрдбреЛрдм рдлреНрд▓реЗрдХреНрд╕ рдмрд┐рд▓реНрдбрд░ рдХрд╛ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ ...

рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рдЗрд╕реЗ рдПрдХ рдПрдХреНрд╢рдирд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЯреВрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрд╛ред

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

рд╣рд╛рд▓рд╛рдБрдХрд┐ рдореЗрд░рд╛ рд╕рдордЧреНрд░ рдкреНрд░рднрд╛рд╡ рдпрд╣ рд╣реИ рдХрд┐ рдорд╛рд░реНрдХрдЕрдк рдФрд░ рдХреЛрдб рдХреЗ рд╕рдВрдпреЛрдЬрди рдХреЗ рд╕рд╛рде UI рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ рдПрдХ рдорд┐рд╢реНрд░рд┐рдд рдмреИрдЧ рд╣реИред

рдЖрдЬ рдХреА рджреБрдирд┐рдпрд╛ рдореЗрдВ рдирд╣реАрдВред рдкрд╛рдпрдерди рдХреЗ рджрд░реНрд╢рди рдореЗрдВ рдЕрдирд┐рд╡рд╛рд░реНрдп рднрд╛рд╖рд╛рдПрдБ рд╡рд┐рдХрд╕рд┐рдд рд╣реБрдИ рд╣реИрдВ рдФрд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдорд╣рд╛рди рд╣реИрдВред рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рдЖрдЧрдорди рдХреЗ рд╕рд╛рде рдПрдореНрдмреЗрдбреЗрдб рдорд╛рд░реНрдХрдЕрдк (рдПрдХреНрд╕рдПрдордПрд▓) рдХреЗ рд╕рд╛рде рдШреЛрд╖рдгрд╛рддреНрдордХ рддрдХрдиреАрдХ рдореБрдЦреНрдпрдзрд╛рд░рд╛ рдмрди рдЧрдИ; рдФрд░ JSON рдкрд╕рдВрджреАрджрд╛ рдЯреЗрдХреНрд╕реНрдЯ рдЖрдзрд╛рд░рд┐рдд рдбреЗрдЯрд╛ рдкреНрд░рд╛рд░реВрдк рдмрди рдЧрдпрд╛ред

E4X рдХреЗрд╡рд▓ рдПрдХреНрд╢рдирд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛

E4X рдПрдХ ECMA рдорд╛рдирдХ рдерд╛ред рдореЛрдЬрд╝рд┐рд▓рд╛ рдиреЗ рдЗрд╕реЗ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рднреЗрдЬ рджрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдлрд┐рд░ рдЗрд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ (рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡рд┐рдХреНрд░реЗрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╣реБрдд рд╣реА рдЕрд╕рд╛рдорд╛рдиреНрдп рдХрджрдо)ред рдЕрдиреНрдп рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡рд┐рдХреНрд░реЗрддрд╛ рдЗрд╕реЗ рдХрднреА рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗред (рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЙрдиреНрд╣реЛрдВрдиреЗ рдЕрдиреНрдп рдирдИ рдИрд╕реАрдПрдордП рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИред) рдИ4рдПрдЪ рдХреЗ рд╕рд╛рде, рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡рд┐рдХреНрд░реЗрддрд╛рдУрдВ рдХреЛ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдореЗрдВ рдХрднреА рджрд┐рд▓рдЪрд╕реНрдкреА рдирд╣реАрдВ рдереА (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдлрд┐рд░ рд╕реЗ, рдЙрдиреНрд╣реЛрдВрдиреЗ рдХрдИ рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВрдиреЗ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХреА рд╣реИ)ред

рдареАрдХ рд╣реИ, рдЕрдЧрд░ рдореИрдВрдиреЗ рдЖрдкрд╕реЗ 2 рдЪреАрдЬреЗрдВ рдорд╛рдВрдЧреАрдВ рдФрд░ рдЖрдкрдиреЗ 3 рдорд╣реАрдиреЗ рдореЗрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдФрд░ рдкрд╣рд▓реА рдЪреАрдЬ рдХрд╛ рдХреЛрдИ рд╡рд┐рдХрд▓реНрдк рд╣реИ, рддреЛ рдореИрдВ рдЖрдкрд╕реЗ рдХреЗрд╡рд▓ рд╡рд╣реА рдкреВрдЫреВрдВрдЧрд╛ рдЬреЛ рдЖрдкрдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдФрд░ рдкрд┐рдЫрд▓реЗ рдбрд┐рд▓реАрд╡рд░реА рдкреНрд░рджрд░реНрд╢рди рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд╕рдВрднрд╡ рд╣реИред

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

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

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

... ListView ...

рдПрдХ рдЬреАрдпреВрдЖрдИ рд╕рдВрдкрд╛рджрдХ рдЗрд╕ рдорд╛рд░реНрдХрдЕрдк рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓реЗрдЧрд╛? рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдирд╣реАрдВ рд╕рдордЭрддрд╛ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП UI рдХреА рдХрд▓реНрдкрдирд╛ рдХреИрд╕реЗ рдХрд░реЗрдВред

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

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

рдЬреАрдбрдмреНрд▓реНрдпреВрдЯреА рдиреЗ рдЬрд╛рд╡рд╛ рдХреЗ рд╕рд╛рде рдпреВрдЖрдИ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реБрдП рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╢реБрд░реБрдЖрдд рдХреАред рдлрд┐рд░ UiBinder рдХреЗ рд╕рд╛рде рдЖрдпрд╛, рдЬрд╣рд╛рдВ рдЖрдк рдПрдХ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЗ рд╕рд╛рде, xml рдорд╛рд░реНрдХрдЕрдк рдореЗрдВ UI рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рддрдм рдЯреВрд▓реАрдВрдЧ, рдПрдХреНрд▓рд┐рдкреНрд╕ рдкреНрд▓рдЧрд┐рди, UI рдХреЛ xml рдорд╛рд░реНрдХрдЕрдк рдореЗрдВ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред рдПрдВрдбреНрд░реЙрдЗрдб рднреА рдЗрд╕реЗ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рддреЛ рдореИрдВрдиреЗ рдЬреЛ рджреЗрдЦрд╛ рд╡рд╣ рд╣реБрдЖ, рдорд╛рд░реНрдХрдЕрдк UI IDE рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдорд╛рд░реНрдХрдЕрдк рд╕рдордп рдореЗрдВ рдПрдХ рдмрд╣реБрдд рдмрдбрд╝рд╛ рдирд┐рд╡реЗрд╢ рд╣реИ рдФрд░ рдЗрд╕реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрдЯрд┐рд▓рддрд╛ рдЯреВрд▓рд┐рдВрдЧ рд╣реИред рдФрд░ рдЯреВрд▓реАрдВрдЧ рд╣рдореЗрд╢рд╛ рдЖрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдВрддрд┐рдо рд╣реИред рддреЛ рдЗрд╕ рдмреАрдЪ, рдЬрдмрдХрд┐ рд╡рд╣ рд╕рдм рдЬреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдореЗрдВ рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИ, рджреЛ рджреБрдирд┐рдпрд╛ рд╣реИрдВред рд╕рдм рдХреБрдЫ рдХрд░рдиреЗ рдХреЗ рджреЛ рджрд┐рд▓рдЪрд╕реНрдк рддрд░реАрдХреЗред рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рднрд╛рд╖рд╛ рдореЗрдВ рдФрд░ рдПрдХ рдорд╛рд░реНрдХрдЕрдк рдореЗрдВред рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЖрдЬ рдЬреАрдбрдмреНрд▓реНрдпреВрдЯреА рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реВрдВред рдЬрдм рдореИрдВ рдкреНрд░рд▓реЗрдЦрди рд▓рд┐рдЦрддрд╛ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ рдЗрд╕реЗ рджреЛ рдмрд╛рд░ рд▓рд┐рдЦрдирд╛ рд╣реЛрддрд╛ рд╣реИ, рдПрдХ рдмрд╛рд░ рдЬрд╛рд╡рд╛ рдХреЗ рд▓рд┐рдП рдФрд░ рдПрдХ рдмрд╛рд░ UiBinder XML рдорд╛рд░реНрдХрдЕрдк рдХреЗ рд▓рд┐рдПред рддреЛ рдЕрд╕рд▓реА рд╕рд╡рд╛рд▓, рдЕрдЧрд░ рдЖрдк рдорд╛рд░реНрдХрдЕрдк рд░реЛрдб рд╕реЗ рдиреАрдЪреЗ рдЬрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рд╡рд╛рд▓ рдкреВрдЫрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпрд╛ рдпрд╛рддреНрд░рд╛ рдХреЗ рд▓рд╛рдпрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрдЯрд┐рд▓рддрд╛ рд╣реИ!

JSX рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдиреНрдп рдореБрджреНрджреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рд▓рдХреНрд╖реНрдп рд╣реИ рдЬрд╣рд╛рдВ рдЖрдк рдПрдХ рд╕рд╛рде рдорд┐рд╢реНрд░рдг рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬреЛ рдЖрдк HTML рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕рд╛ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдорд╛рд░реНрдХрдЕрдк рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреА рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрдЯрд┐рд▓рддрд╛ рдорд╛рд░реНрдХрдЕрдк рдХреЗ рд╕рд╛рде UI рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИред рдЦрд╛рд╕рдХрд░ рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рд▓рдХреНрд╖реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдорд╛рд░реНрдХрдЕрдк рднрд╛рд╖рд╛ рдирд╣реАрдВ рд╣реИред рдХрдо рд╕реЗ рдХрдо рд░реЛрдЬрдорд░реНрд░рд╛ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВред

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

рд▓реЗрдХрд┐рди рдлрд┐рд░, рдЕрдЧрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХрд╛рдо рдкрд░ рдкрд░реНрдпрд╛рдкреНрдд рджрд┐рдорд╛рдЧ рд╣реИ, рддреЛ рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдЖрдк рдХреНрдпрд╛ рдХрд░рддреЗ рд╣реИрдВред рджрд┐рди рдХреЗ рдЕрдВрдд рдореЗрдВ, рдпрджрд┐ рдбреЗрд╡рд▓рдкрд░ рдЖрдкрдХреЗ рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХреЛ рддреЗрдЬреА рд╕реЗ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдЖрдк рдХрд░реНрд╖рдг рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЗрдВрдЬреАрдирд┐рдпрд░рд┐рдВрдЧ рдЯреАрдо рдХреЛ рдХрд┐рд╕ рдХреАрдордд рдкрд░ред

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

E4X рдПрдХ ECMA рдорд╛рдирдХ рдерд╛ред рдореЛрдЬрд╝рд┐рд▓рд╛ рдиреЗ рдЗрд╕реЗ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рднреЗрдЬ рджрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдлрд┐рд░ рдЗрд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ (рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡рд┐рдХреНрд░реЗрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╣реБрдд рд╣реА рдЕрд╕рд╛рдорд╛рдиреНрдп рдХрджрдо)ред рдЕрдиреНрдп рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡рд┐рдХреНрд░реЗрддрд╛ рдЗрд╕реЗ рдХрднреА рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рдереЗред

рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдХреЗрд╡рд▓ Adobe рдиреЗ E4X рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЪреИрдВрдкрд┐рдпрди рдмрдирд╛рдпрд╛ рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд╕рд╛рде рдЙрд╕рдХрд╛ рдЕрдЪреНрдЫрд╛ рдЕрдиреБрд╕рд░рдг рдХрд┐рдпрд╛ред рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡рд┐рдХреНрд░реЗрддрд╛ рд╣рд░ рд╕рдордп рдЕрдкрдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реЗ рд╕рд╛рдорд╛рди рдЬреЛрдбрд╝рддреЗ рдФрд░ рдирд┐рдХрд╛рд▓рддреЗ рд╣реИрдВ; рдХреНрдпрд╛ Google рдиреЗ MathML рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣рдЯрд╛рдпрд╛?

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

рдпрд╣рд╛рдБ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдФрд░ JSX рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рд╣реИред рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд░рд┐рдПрдХреНрдЯ рдЯреЗрдмрд▓ рдкрд░ рдХреНрдпрд╛ рд▓рд╛рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдЖрдк рдЗрд╕рдХреЗ рд╕рд╛рде рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╕рд┐рдд рдирд╣реАрдВ рд╣реЛ рдЬрд╛рддреЗ, рддрдм рд░рд╛рдд рд╣реЛ рдЬрд╛рддреА рд╣реИ рдФрд░ рдЕрдиреНрдп рд╕рднреА рдврд╛рдВрдЪреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рджрд┐рдиред

рдПрдХ рдЬреАрдпреВрдЖрдИ рд╕рдВрдкрд╛рджрдХ рдЗрд╕ рдорд╛рд░реНрдХрдЕрдк рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓реЗрдЧрд╛? рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдирд╣реАрдВ рд╕рдордЭрддрд╛ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП UI рдХреА рдХрд▓реНрдкрдирд╛ рдХреИрд╕реЗ рдХрд░реЗрдВред

let style = {
  padding: new EdgeInsets.all(8.0),
  itemExtent: 20.0
};

<ListView.builder style={style}>
  {(context, index) => <Text> entry {index} </Text>}
</ListView.builder>

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

рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдорд╛рд░реНрдХрдЕрдк рд╕рдордп рдореЗрдВ рдПрдХ рдмрд╣реБрдд рдмрдбрд╝рд╛ рдирд┐рд╡реЗрд╢ рд╣реИ рдФрд░ рдЗрд╕реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрдЯрд┐рд▓рддрд╛ рдЯреВрд▓рд┐рдВрдЧ рд╣реИред

рдореИрдВ рдХреЗрд╡рд▓ рдбрд╛рд░реНрдЯ рдХрдВрдкрд╛рдЗрд▓рд░ рдкрд░ рдЗрди рд╕рд░рд▓ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ рддрд╛рдХрд┐ рдпрджрд┐ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЪрд╛рд╣реЗрдВ рддреЛ рд╡реЗ рдЗрд╕ рдПрдХреНрд╕рдПрдордПрд▓ рд╕рдВрд░рдЪрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рд┐рдЦ рд╕рдХреЗрдВред рдкреБрд░рд╛рдирд╛ рддрд░реАрдХрд╛ рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдЧрд╛ рдФрд░ рдЗрд╕рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд╛рдо рдХреА рдорд╛рддреНрд░рд╛ рдмрд╣реБрдд рдмрдбрд╝реА рдирд╣реАрдВ рд╣реИред рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ JSX рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП babel.js рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рдХреЛрдб рдХреА рдХрд┐рддрдиреА рд▓рд╛рдЗрдиреЗрдВ рд▓рдЧрддреА рд╣реИрдВ рдФрд░ рдореИрдВ рд╕реИрдХрдбрд╝реЛрдВ рдХреА рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рди рдХрд┐ рд╣рдЬрд╛рд░реЛрдВ рд▓рд╛рдЗрди (рдореИрдВрдиреЗ рдЕрднреА рдЗрд╕реЗ рдЪреЗрдХ рдХрд┐рдпрд╛ рд╣реИ)ред

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

рдЬрд╝рд░реВрд░ рд▓реЗрдХрд┐рди рд░рд┐рдПрдХреНрдЯ рдРрд╕рд╛ рд╣реА рд░рд╣рд╛ рд╣реИ рдФрд░ рдпрд╣ рдХреЛрдИ рдореБрджреНрджрд╛ рдирд╣реАрдВ рд╣реИред

рдЬрдм рдореИрдВ рдкреНрд░рд▓реЗрдЦрди рд▓рд┐рдЦрддрд╛ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ рдЗрд╕реЗ рджреЛ рдмрд╛рд░ рд▓рд┐рдЦрдирд╛ рд╣реЛрддрд╛ рд╣реИ, рдПрдХ рдмрд╛рд░ рдЬрд╛рд╡рд╛ рдХреЗ рд▓рд┐рдП рдФрд░ рдПрдХ рдмрд╛рд░ UiBinder XML рдорд╛рд░реНрдХрдЕрдк рдХреЗ рд▓рд┐рдПред

рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдирд╣реАрдВ рдХреНрдпреЛрдВрдХрд┐ рдорд╛рд░реНрдХрдЕрдк рдХреЛрдб рдХреЗ рдЕрдВрджрд░ рд░рд╣рддрд╛ рд╣реИред

рдпрд╛рддреНрд░рд╛ рдХреЗ рд▓рд╛рдпрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрдЯрд┐рд▓рддрд╛ рд╣реИ!

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

рд░рд┐рдПрдХреНрдЯ рдпреВрдЖрдИ/рдпреВрдПрдХреНрд╕ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╡реАрдирддрдо рддрдХрдиреАрдХреЛрдВ рдХреЗ рд╕рд╛рде рдпрд╛рддреНрд░рд╛ рдХрд╛ рдиреЗрддреГрддреНрд╡ рдХрд░ рд░рд╣рд╛ рд╣реИред рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд╕рд╛рде рдЗрд╕рдХрд╛ рдЬрдмрд░рджрд╕реНрдд рдХрд░реНрд╖рдг рд╣реИред рдЖрдкрдХрд╛ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдЬреЛрдЦрд┐рдо рд░рд┐рдПрдХреНрдЯ рдмрд╛рд░ рд╕реЗ рдирд╣реАрдВ рдорд┐рд▓рдирд╛ рд╣реИред

JSX рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдиреНрдп рдореБрджреНрджреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдирд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЖрдк рдПрдХ рд╕рд╛рде рдорд┐рд╢реНрд░рдг рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬреЛ рдЖрдк HTML рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдХрд░ рд░рд╣реЗ рд╣реИрдВ

JSX рд╕рд┐рд░реНрдл HTML рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ, рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ XML рдорд╛рд░реНрдХрдЕрдк рд╕реЗ рд╡реНрдпреВрдЬ (рдЬреИрд╕реЗ рд╕реНрдкрдВрджрди рд╡рд┐рдЬреЗрдЯ) рдЬреЗрдирд░реЗрдЯ рдХрд░рддрд╛ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрд╕рд▓реА рд╕рд╡рд╛рд▓ рдпрд╣ рд╣реИ рдХрд┐ рдпреВрдЖрдИ рдХреЛ рддреЗрдЬреА рд╕реЗ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдпреВрдЖрдИ/рдпреВрдПрдХреНрд╕ рдХреЛ рдмреЗрд╣рддрд░ рддрд░реАрдХреЗ рд╕реЗ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдмреЗрд╣рддрд░ рдЕрд░реНрде: рддреЗрдЬрд╝, рдЙрдЪреНрдЪ рдЧреБрдгрд╡рддреНрддрд╛ (рдХреЛрдб рдФрд░ UI/UX), рд╕рд╣рдЬ рдбрд┐рдЬрд╝рд╛рдЗрдирд░-рдбреЗрд╡рд▓рдкрд░ рдЗрдВрдЯрд░реИрдХреНрд╢рди, рдЖрджрд┐ред

рд╡реИрд╕реЗ, рдбреЗрд╡рд▓рдкрд░ рдЯреВрд▓ рдкрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ; рдХрдорд╛рд▓ рдХрд╛ рдерд╛ 'рдлрдбрд╝рдлрдбрд╝рд╛рддрд╛ рдбреЙрдХреНрдЯрд░'!!!
рдореИрдВ рдЕрдм рдЧреИрд╕ рд╕реЗ рдЦрд╛рдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдЦрддрд░рдирд╛рдХ рд░реВрдк рд╕реЗ рд░рдЪрдирд╛рддреНрдордХ рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВ;)

рдореИрдВ рдпрд╣рд╛рдВ рдЙрдард╛рдП рдЧрдП рдкрдардиреАрдпрддрд╛ рдкреНрд░рд╢реНрди рдХрд╛ рдЙрддреНрддрд░ рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдкрдардиреАрдпрддрд╛ рдХреЗрд╡рд▓ рдЙрди рдХрдИ рдХрд╛рд░рдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ рдЬрд┐рди рдкрд░ рд╣рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдХреЛрдб рдкрдардиреАрдпрддрд╛ рдФрд░ рд╕рд░рд▓рддрд╛ рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ рдЕрдиреНрдп рд▓рд╛рднреЛрдВ рдХрд╛ рдПрдХ рдкреВрд░рд╛ рд╕рдореВрд╣ рдЪрд▓рд╛рддреА рд╣реИред

рдпрджрд┐ рдпрд╣ рдореБрдЦреНрдп рд▓рд╛рдн рд╣реИ рддреЛ рдпрд╣ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬрд┐рд╕рдХрд╛ рд╣рдо рдкрд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рдЙрди рдЗрдВрдЬреАрдирд┐рдпрд░реЛрдВ рдХрд╛ рдорд┐рд╢реНрд░рдг рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдПрдЪрдЯреАрдПрдордПрд▓, рд░рд┐рдПрдХреНрдЯ, рдЖрдИрдУрдПрд╕ рдХреЛрдб, рдПрдВрдбреНрд░реЙрдЗрдб рдХреЛрдб, рдлрд╝реНрд▓рдЯрд░, рдХрдорд╛рдВрдб-рд▓рд╛рдЗрди рдРрдк рдЖрджрд┐ рд▓рд┐рдЦрдиреЗ рдХреЗ рдЖрджреА рд╣реИрдВ, рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рд╡рд┐рднрд┐рдиреНрди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рдкреНрд░рд╕реНрддреБрдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЙрдирд╕реЗ рдпрд╣ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реЗрдВ рдХрд┐ рд╡реЗ рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реИрдВред рдкрд░рд┐рдгрд╛рдореА UI рдЬреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛ред рдлрд┐рд░ рд╣рдо рдорд╛рдк рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреМрди рд╕рд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕рд░реНрд╡реЛрддреНрддрдо рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред @InMatrix рдпрд╣ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдПрдиреАрдореЗрд╢рди рдХреЗ рдХрд╛рдо рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?

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

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

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

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

рдпрд╣ рд╕рд┐рд░реНрдл рдирд┐рд░реНрдорд╛рдг рд╡рд┐рдзрд┐ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдЕрдиреНрдп рд╕рднреА рд╡рд┐рдзрд┐рдпрд╛рдВ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдмрд┐рд▓реНрдб рд╡рд┐рдзрд┐ рд╡рд┐рдЬреЗрдЯ рдЯреНрд░реА рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрд▓ рдХрд░рддреА рд╣реИред рд░рд┐рдПрдХреНрдЯ рдореЗрдВ рдЙрдк-рдкреЗрдбрд╝ рдХреЗ рдЯреБрдХрдбрд╝реЗ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЫреЛрдЯреЗ рддрд░реАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдФрд░ рдлрд┐рд░ рдЙрдиреНрд╣реЗрдВ рдмрдбрд╝реЗ рдкреЗрдбрд╝ рдореЗрдВ рдХреЙрд▓ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрдо рд╣реИред

рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХреЗ рд╕рд╛рде рд╡реЗрдмрд╕реНрдЯреЙрд░реНрдо рдореЗрдВ рднреА, рдкреНрд░рддреНрдпреЗрдХ рдПрдХреНрд╕рдПрдордПрд▓ рдиреЛрдб рдореЗрдВ +/- рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реНрдХреНрд░реАрди рдХреА рдКрдВрдЪрд╛рдИ рд╕реЗ рдмрдбрд╝реА рд░реАрдбрд┐рдВрдЧ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдиреЛрдб рдФрд░ рдмрдЪреНрдЪреЛрдВ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░/рдкрддрди рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

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

рд╣рдо рд▓реЛрдЧреЛрдВ рдХреЛ рдЕрдкрдиреА рдирд┐рд░реНрдорд╛рдг рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдЫреЛрдЯреЗ рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рд╡рд┐рдЧреЗрдЯреНрд╕ рдореЗрдВ рддреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред

рдХреНрдпрд╛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рд╡рд┐рдЬреЗрдЯ рдпрд╛ рдХреЗрд╡рд▓ рдПрдХ рд░реИрдкрд░/рд╕рдордЧреНрд░ рд╡рд┐рдЬреЗрдЯ рдмрди рдЬрд╛рддрд╛ рд╣реИ? рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рдкрд╛рд╕ рдХрдо рд╕реЗ рдХрдо 2 рдЙрдкрдпреЛрдЧ рдЙрджрд╛рд╣рд░рдг рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред

https://flutter.io/catalog/samples/basic-app-bar/ рдкрд░ AppBar рдЗрддрдирд╛ рдЕрдиреВрдард╛ рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рдШрдЯрдХ рдирд╣реАрдВ рдХрд╣ рд╕рдХрддреЗ; рдпрд╣ рдПрдХ рд░реИрдкрд░/рд╕рдордЧреНрд░ рдШрдЯрдХ рд╣реИ рдФрд░ рдЗрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдпреВрдЖрдИ рдХреЗ рдЙрд╕ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдиреАрдп рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рди рдХрд░реЗрдВ? рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдпрд╣ рдФрд░ рдЪреАрдЬреЗрдВ рдХрд░рддрд╛ рд╣реИ рддреЛ рдЗрд╕реЗ рдПрдХ рд░реИрдкрд░/рд╕рдордЧреНрд░ рдШрдЯрдХ рдореЗрдВ рд░рдЦрдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

рд╕реНрдкрдВрджрди рдореЗрдВ рд╣рдордиреЗ рдЬреЛ рдПрдХ рдЪреАрдЬ рдкрд╛рдИ рд╣реИ, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдмрдбрд╝реЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рддрд░реАрдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП рдорд╣рд╛рди рдирд╣реАрдВ рд╣реИрдВ

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

https://flutter.io/catalog/samples/basic-app-bar/ рдкрд░ AppBar рдЗрддрдирд╛ рдЕрдиреВрдард╛ рд╣реИ рдХрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рдПрдХ рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рдШрдЯрдХ рдирд╣реАрдВ рдХрд╣ рд╕рдХрддреЗ

рдпрд╣ рднреА рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдЫреЛрдЯрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдареАрдХ рд╣реИред

рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ, рдпрд╣ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╣рдж рддрдХ рдСрдл-рд╡рд┐рд╖рдп рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЖрдк рдЗрд╕ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдХреГрдкрдпрд╛ рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рджрд░реНрдЬ рдХрд░реЗрдВ (рдпрд╛ рдИ-рдореЗрд▓ рд╕реНрдкрдВрджрди-рджреЗрд╡ рдпрд╛ рд╕реНрдЯреИрдХ рдУрд╡рд░рдлреНрд▓реЛ рдкрд░ рдкреЛрд╕реНрдЯ рдХрд░реЗрдВ, рдЬреЛ рднреА рдЖрдк рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ)ред

рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рджрдлрди рд╣реЛрддреЗ рджреЗрдЦрдирд╛ рдкрд╛рдЧрд▓рдкрди рд╣реИред рдореЗрд░реА рд░рд╛рдп рдореЗрдВ рдпрд╣ рдлрд╝реНрд▓рдЯрд░ рдХреЗ рд▓рд┐рдП рд╡рд┐рдЬреЗрдЯреНрд╕ рдХреА рд░рдЪрдирд╛ рдХреЗ рд▓рд┐рдП JSX- рдЬреИрд╕реЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдореЗрдХ рдпрд╛ рдмреНрд░реЗрдХ рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рдореИрдВ рдмрд╕ рд▓рдХреНрд╖рд┐рдд рджрд░реНрд╢рдХреЛрдВ рдХреЛ рд╕рдордЭ рдирд╣реАрдВ рдкрд╛ рд░рд╣рд╛ рд╣реВрдВ, рдХрдИ рдЖрдИрдУрдПрд╕ рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб рджреЗрд╡ рджреЗрд╢реА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝ рд░рд╣реЗ рд╣реИрдВ, рдпрд╣ рдмрд╛рдЬрд╛рд░ рд╣рд┐рд╕реНрд╕реЗрджрд╛рд░реА рдХрд╛рдЯрдиреЗ рдХрд╛ рд╕рд╣реА рдореМрдХрд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред

рдореИрдВ рдЗрд╕рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд▓реЛрдЧреЛрдВ рдХреЛ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдХреЛ рдПрдХ рд╕реНрдкрд┐рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ рд╣рдо рдХрд┐рд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдореИрдВ рд╕реНрдкрдВрджрди рдореЗрдВ JSX рдХреЛ рдереЛрдбрд╝рд╛ рдпрд╛рдж рдирд╣реАрдВ рдХрд░рддрд╛ред рдпрд╣ рдпрд╣рд╛рдВ рдФрд░ рд╡рд╣рд╛рдВ рдХреБрдЫ рдЫреЛрдЯреЗ рд▓рд╛рднреЛрдВ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдврд╛рдВрдЪреЗ рдФрд░ рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рдЦрд░рд╛рдм рдХрд░ рджреЗрдЧрд╛ред

@birkir рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЖрдкрдХреЗ рд╕рд╛рде 100% рд╣реВрдВред JSX рдХреА рдХрдореА, рдЬреЛ Flutter рдХреЗ рд▓рд┐рдП рдПрдХрджрдо рд╕рд╣реА рд╣реИ, Flutter рдХреЛ рдкреБрд░рд╛рдирд╛ рдФрд░ рдЬрдВрдЧ рдЦрд╛рдП рд╣реБрдП рдмрдирд╛рддрд╛ рд╣реИ, 1990 рдХреЗ рджрд╢рдХ рдХреА рддрдХрдиреАрдХ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рд░ рдХреЛрдИ, рдХрд┐рд╕реА рди рдХрд┐рд╕реА рд░реВрдк рдореЗрдВ, JSX рдХреЛ рдЕрдкрдирд╛ рд░рд╣рд╛ рд╣реИ; рдирд╡реАрдирддрдо рд▓реЛрдХрдкреНрд░рд┐рдп Vue.js рдврд╛рдВрдЪрд╛ рд╣реИред

+1

@zoechi JSX рдХреЗ рд╕рд╛рде рдЖрдкрдХрд╛ рдкрд┐рдЫрд▓рд╛ рдЕрдиреБрднрд╡ рдХреНрдпрд╛ рд╣реИ, рдХреНрдпрд╛ рдЖрдкрдиреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ рдпрд╛ рдмрд╕ рдЗрд╕реЗ рджреЗрдЦрд╛ рд╣реИ? рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд▓реЛрдЧ JSX рдХреЛ рдпрд╣ рдХрд╣рдХрд░ рдХрдо рдЖрдВрдХ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдпрд╣рд╛рдБ рдФрд░ рд╡рд╣рд╛рдБ рдЫреЛрдЯреЗ рд▓рд╛рдн рджреЗрдЧрд╛ред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдЙрддреНрдкрд╛рдж рдирд╣реАрдВ рд╣реИред

@birkir рдореБрдЭреЗ рдпрд╣рд╛рдБ JSX рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдЙрддреНрд╕рд╛рд╣ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЛрдИ рднреА рдпрд╣ рд╕рдордЭрд╛рдиреЗ рдХреА рдЬрд╣рдордд рдирд╣реАрдВ рдЙрдард╛рддрд╛ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕реЗ DSL рд╣реЛрдиреЗ рд╕реЗ рдлрд╝реНрд▓рдЯрд░ рдХреЛ рдХреНрдпрд╛ рд╣рд╛рд╕рд┐рд▓ рд╣реЛрдЧрд╛, рд╕рд┐рд╡рд╛рдп рд╢рд╛рдпрдж рдХреБрдЫ рдмреЗрд╣рддрд░ рдкрдардиреАрдпрддрд╛ рдХреЗ рдЬреЛ рдЬреНрдпрд╛рджрд╛рддрд░ рд╡реНрдпрдХреНрддрд┐рдкрд░рдХ рд╣реИред

рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдПрдВ рдЖрдорддреМрд░ рдкрд░ рдЗрд╕реЗ рд╕реБрдзрд╛рд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдХреЗрд╡рд▓ рдврд╛рдВрдЪреЗ рдХреЛ рдХрдо рдХрд░ рджреЗрддреА рд╣реИрдВред
рдЙрдиреНрд╣реЗрдВ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╕реЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреА рдЦрдкрдд рд╣реЛрддреА рд╣реИ рдЬреЛ рдЕрдиреНрдп рдХреНрд╖реЗрддреНрд░реЛрдВ рд╕реЗ рдЧрд╛рдпрдм рд╣реИрдВ рдЬрд╣рд╛рдВ рд▓рд╛рдкрддрд╛ рд╕реБрд╡рд┐рдзрд╛рдПрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд▓реЛрдЧреЛрдВ рдХреЛ рдХреБрдЫ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддреА рд╣реИрдВред

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

рдлрд╝реНрд▓рдЯрд░ UI рдХреЛрдб рдХреЛ рдХрдо рд╡рд░реНрдмреЛрдЬрд╝ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдбрд╛рд░реНрдЯ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреА рднреА рдпреЛрдЬрдирд╛ рд╣реИ рдЬреЛ JSX рдХреЗ рдорд╛рдорд▓реЗ рдХреЛ рдФрд░ рднреА рдХрдордЬреЛрд░ рдХрд░рддрд╛ рд╣реИред

рддреЛ рдЖрдкрдХреЗ рдареЛрд╕ рддрд░реНрдХ рдХреНрдпрд╛ рд╣реИрдВ?

рд╕рдЪ рдореЗрдВ !!! "рдХреЛрдИ рднреА рдпрд╣ рд╕рдордЭрд╛рдиреЗ рдХреА рдЬрд╣рдордд рдирд╣реАрдВ рдЙрдард╛рддрд╛ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрдкрдВрджрди рдХреНрдпрд╛ рд╣рд╛рд╕рд┐рд▓ рдХрд░реЗрдЧрд╛ ... рдмреНрд▓рд╛ рдмреНрд▓рд╛ рдмреНрд▓рд╛"ред
рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЗрд╕ рд╕реВрддреНрд░ рдХреЛ рдкреВрд░рд╛ рдирд╣реАрдВ рдкрдврд╝рд╛? рдХреНрдпрд╛ рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рдЖрдкрдХреЗ JSX рдЬреНрдЮрд╛рди рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ?

рдЖрдк рд▓реЛрдЧ рдПрдирдЖрдИрдПрдЪ рд╕рд┐рдВрдбреНрд░реЛрдо рд╕реЗ рдкреАрдбрд╝рд┐рдд рд╣реИрдВ (рдпрд╣рд╛рдВ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)ред "рдЕрдЪреНрдЫреЗ рдХрд▓рд╛рдХрд╛рд░ рдирдХрд▓ рдХрд░рддреЗ рд╣реИрдВ, рдорд╣рд╛рди рдХрд▓рд╛рдХрд╛рд░ рдЪреЛрд░реА рдХрд░рддреЗ рд╣реИрдВ", рдФрд╕рдд рджрд░реНрдЬреЗ рдХреЗ рдХрд▓рд╛рдХрд╛рд░, рдареАрдХ рд╣реИ, рдЖрдкрдХреА рддрд░рд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддреЗ рд╣реИрдВред

рдХреЗрд╡рд▓ рдпрд╣ рддрдереНрдп рдХрд┐ JSX рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рд╕рд░рд▓ рд╣реИ, рдФрд░ рдпрд╣ рдирдП рдЧреНрд░рд╛рд╣рдХреЛрдВ (рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдореЛрдмрд╛рдЗрд▓ рдбреЗрд╡рд▓рдкрд░реНрд╕) рдХреЛ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдлреА рдорджрдж рдХрд░реЗрдЧрд╛, рдЗрд╕реЗ рдПрдХ рдмрд┐рдирд╛ рджрд┐рдорд╛рдЧ рд╡рд╛рд▓рд╛ рдмрдирд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рд▓реЛрдЧ рджреЗрдЦрдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рддреЗ рд╣реИрдВред рдпрд╣ рдордВрдЪ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдмреЛрд▓реНрдб рдирд╣реАрдВ рд╣реИред

рдХреНрдпрд╛ рд╣рдо рдХреГрдкрдпрд╛ рд╡рд╛рдж-рд╡рд┐рд╡рд╛рдж рдХрд░рддреЗ рд╕рдордп рд░рдЪрдирд╛рддреНрдордХ рд╕реНрд╡рд░ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред

рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдХреНрдпреЛрдВрдХрд┐ рджреВрд╕рд░реЛрдВ рдХреЗ рдкрд╛рд╕ рдпрд╣ рдХрдордЬреЛрд░ рддрд░реНрдХ рд╣реИред рдареАрдХред
рд╕реНрдкрдВрджрди рдореЗрдВ рд╣реЙрдЯ рд░реАрд▓реЛрдбрд┐рдВрдЧ рдХреНрдпреЛрдВ рд╣реЛрддреА рд╣реИ? рд╡рд╣ рдХрд╣рд╛рдВ рд╕реЗ рдЖрдпрд╛ рд╣реИ? рдпреАрд╢реБ рдпрд╛рд░ред

рд╣рдо рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдареЛрд╕ рддрд░реНрдХ рджреЗрдиреЗ рдореЗрдВ рдХреИрд╕реЗ рд╡рд┐рдлрд▓ рд░рд╣реЗ? рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЯреНрд░реИрдХреНрд╢рди рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдирд╛ рд╣рдорд╛рд░рд╛ рдирдВрдмрд░ рдПрдХ рдХрд╛рд░рдг рд╣реИред

рдХрд╛рд░рдг рд╕рдВрдЦреНрдпрд╛ рджреЛ, рдкрдардиреАрдпрддрд╛ :

https://github.com/flutter/flutter/blob/master/examples/flutter_gallery/lib/demo/cupertino/cupertino_buttons_demo.dart рдмрдирд╛рдо https://gist.github.com/birkir/e921158239c324ab95bb0b174383a562

рдХрд╛рд░рдг рд╕рдВрдЦреНрдпрд╛ рддреАрди, рдЬреАрдпреВрдЖрдИ рдмрд┐рд▓реНрдбрд░реНрд╕ ред рдореИрдВ рд░реАрдбрдореЗ рдореЗрдВ рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдЙрджреНрдзреГрдд рдХрд░реВрдВрдЧрд╛ред

рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдХреЛ рдЖрдИрдУрдПрд╕ рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд▓рд┐рдП рдЖрдзреБрдирд┐рдХ рдореЛрдмрд╛рдЗрд▓ рдРрдк рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдореЛрдмрд╛рдЗрд▓ рдРрдк рдПрд╕рдбреАрдХреЗред

рдореБрдЭреЗ рдпрд╣ рджреЗрдЦрдиреЗ рд╕реЗ рдирдлрд░рдд рд╣реЛрдЧреА рдХрд┐ рдлрд╝реНрд▓рдЯрд░ рдмреАрдЯрд╛ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдкреЙрд▓рд┐рдорд░ рдХреЗ рд╕рдорд╛рди рдЦрд░рдЧреЛрд╢ рдХреЗ рдиреАрдЪреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд░реНрд╖рдг рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдирд╛

рд╕рдВрдмрдВрдз рдЕрднреА рднреА рдЕрд╕реНрдкрд╖реНрдЯ рд╣реИред

рдХрд╛рд░рдг рд╕рдВрдЦреНрдпрд╛ рджреЛ, рдкрдардиреАрдпрддрд╛:

рдбрд╛рд░реНрдЯ рдХреЛрдб рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдкрдардиреАрдп рдмрдирд╛рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рдПрдХ рдмреЗрд╣рддрд░ рд▓рдХреНрд╖реНрдп рд▓рдЧрддрд╛ рд╣реИ

рдХрд╛рд░рдг рд╕рдВрдЦреНрдпрд╛ рддреАрди, рдЬреАрдпреВрдЖрдИ рдмрд┐рд▓реНрдбрд░реНрд╕ред рдореИрдВ рд░реАрдбрдореЗ рдореЗрдВ рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдЙрджреНрдзреГрдд рдХрд░реВрдВрдЧрд╛ред

рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдореБрдЭреЗ рдпрд╛рдж рд╣реИ, рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдХрд┐ рдРрд╕рд╛ рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИ рдХрд┐ рдбрд╛рд░реНрдЯ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЗрд╕реЗ рд░реЛрдХрд╛ рдЬрд╛ рд╕рдХреЗред

рдЖрдкрдХреЗ рдкреНрд░рддрд┐рд╡рд╛рдж рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдХреЛ рдЦрд╛рд░рд┐рдЬ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ, рд╣реИ рдирд╛?

  1. рд╕рдВрдмрдВрдз рдХрд╛рдлреА рд╕реНрдкрд╖реНрдЯ рд╣реИред рдЬрдм рддрдХ рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реЛрдиреЗ рдХрд╛ рд▓рдХреНрд╖реНрдп рдирд╣реАрдВ рд╣реИ?
  2. рдорд╣рд╛рди! рдХреНрдпрд╛ рдпрд╣ JSX рдкрдардиреАрдпрддрд╛ рдХреЗ рдХрд░реАрдм рд╣реЛрдЧрд╛? рдРрд╕реА рдЪреАрдЬ рдХреЗ рд▓рд┐рдП рд╡рд░реНрддрдорд╛рди рдкреНрд░рд╕реНрддрд╛рд╡ рдХреНрдпрд╛ рд╣реИ?
  3. рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рдХрд┐ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЙрдкрд▓рдмреНрдз GUI рдмрд┐рд▓реНрдбрд░реЛрдВ рдХреЗ рд▓рд┐рдП JSX рд╕рдорд░реНрдерди рдХреЛ рдЕрдкрдирд╛рдирд╛ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рд╕рд░рд▓ рд╣реЛрдЧрд╛ред

рдлрд╝реНрд▓рдЯрд░ UI рдХреЛрдб рдХреЛ рдХрдо рд╡рд░реНрдмреЛрдЬрд╝ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдбрд╛рд░реНрдЯ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреА рднреА рдпреЛрдЬрдирд╛ рд╣реИ

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

рдХрдИ рдбрд╛рд░реНрдЯ рднрд╛рд╖рд╛ рд╕реБрд╡рд┐рдзрд╛ рдЕрдиреБрд░реЛрдз рдХреЛрдб рдХреЛ рдЕрдзрд┐рдХ рдЫреЛрдЯрд╛/рдкрдардиреАрдп рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ:

рдЙрди рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд╕рд╛рде рдХреЛрдб рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИ:

  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Text('Cupertino Buttons')),
      body: Column(
        Padding(padding: EdgeInsets.all(16.0),
          Text(
            'iOS themed buttons are flat. They can have borders or backgrounds but '
            'only when necessary.'
          ),
        ),
        Expanded(
          Column(mainAxisAlignment: MainAxisAlignment.center,
            Text(_pressedCount > 0
                   ? 'Button pressed $_pressedCount time${_pressedCount == 1 ? "" : "s"}'
                   : ' '),
            Padding(padding: EdgeInsets.all(12.0)),
            Align(alignment: Alignment(0.0, -0.2),
              Row(mainAxisSize: MainAxisSize.min,
                CupertinoButton(onPressed: () { setState(() { _pressedCount += 1; }); },
                  Text('Cupertino Button'),
                ),
                CupertinoButton(onPressed: null,
                  Text('Disabled'),
                ),
              ),
            ),
            Padding(padding: EdgeInsets.all(12.0)),
            CupertinoButton(
              color: CupertinoColors.activeBlue,
              onPressed: () { setState(() { _pressedCount += 1; }); },
              Text('With Background'),
            ),
            Padding(padding: EdgeInsets.all(12.0)),
            CupertinoButton(
              color: CupertinoColors.activeBlue,
              onPressed: null,
              Text('Disabled'),
            )
          ),
        ),
      )
    );
  }

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЖрдкрдХреЗ рдЖрдИрдбреАрдИ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЖрдк рдХреЛрд╖реНрдардХ рдХреЗ рдЕрдВрдд рдореЗрдВ рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЖрдк рдЕрдкрдиреЗ рдЖрдИрдбреАрдИ рдореЗрдВ рдРрд╕рд╛ рдХреБрдЫ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ:

  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Text('Cupertino Buttons')),
      body: Column(
        Padding(padding: EdgeInsets.all(16.0),
          Text(
            'iOS themed buttons are flat. They can have borders or backgrounds but '
            'only when necessary.'
          ),
        ),
        Expanded(
          Column(mainAxisAlignment: MainAxisAlignment.center,
            Text(_pressedCount > 0
                   ? 'Button pressed $_pressedCount time${_pressedCount == 1 ? "" : "s"}'
                   : ' '), // Text
            Padding(padding: EdgeInsets.all(12.0)),
            Align(alignment: Alignment(0.0, -0.2),
              Row(mainAxisSize: MainAxisSize.min,
                CupertinoButton(onPressed: () { setState(() { _pressedCount += 1; }); },
                  Text('Cupertino Button'),
                ), // CupertinoButton
                CupertinoButton(onPressed: null,
                  Text('Disabled'),
                ), // CupertinoButton
              ), // Row
            ), // Align
            Padding(padding: EdgeInsets.all(12.0)),
            CupertinoButton(
              color: CupertinoColors.activeBlue,
              onPressed: () { setState(() { _pressedCount += 1; }); },
              Text('With Background'),
            ), // CupertinoButton
            Padding(padding: EdgeInsets.all(12.0)),
            CupertinoButton(
              color: CupertinoColors.activeBlue,
              onPressed: null,
              Text('Disabled'),
            ), // CupertinoButton
          ), // Column
        ), // Expanded
      ), // Column
    ); // Scafold
  }

рдпрд╣ рдмрд╛рддрдЪреАрдд рдЧрд░реНрдо рд╣реЛ рд░рд╣реА рд╣реИред рдореИрдВ рд╕рднреА рдХреЛ рд╣рдорд╛рд░реА рдЖрдЪрд╛рд░ рд╕рдВрд╣рд┐рддрд╛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ:
https://flutter.io/design-principles/#conflict -resolution
рдореИрдВ рдЗрд╕ рдмрд╛рддрдЪреАрдд рдХреЛ рдХреБрдЫ рджрд┐рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдмрдВрдж рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ, рдЬрдмрдХрд┐ рд╣рд░ рдХреЛрдИ рдЗрд╕ рдмрд╛рдд рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдХреИрд╕реЗ рд╕рдореНрдорд╛рдирдкреВрд░реНрд╡рдХ рдФрд░ рдЙрддреНрдкрд╛рджрдХ рд░реВрдк рд╕реЗ рдпреЛрдЧрджрд╛рди рджреЗ рд╕рдХрддреЗ рд╣реИрдВред

рд╣рдо рд╕рднреА рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ UI рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЛрдмрд╛рдЗрд▓ рд╡рд┐рдХрд╛рд╕ рдЕрдиреБрднрд╡ рдХрд╛ рдПрдХ рдмрд╣реБрдд рд╣реА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред рдЕрднреА рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рдереЛрдбрд╝рд╛ рд╡рд░реНрдмреЛрдЬрд╝ рд╣реИ, рдореБрдЭреЗ рдорд╛рд░реНрдЬрд┐рди рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рд╕реЗ new рдХреБрдЫ рдХрд░рдирд╛ рд╣реЛрдЧрд╛: margin: new EdgeInsets.symmetric(horizontal: 4.0) , рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдХреНрдпрд╛ рдПрдВрдбреНрд░реЙрдЗрдб рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдХреЛрдЯрд▓рд┐рди рдЯреАрдо рдиреЗ рдЬреЛ рдХрд┐рдпрд╛ рд╣реИ, рдХреНрдпрд╛ рдбреАрдПрд╕рдПрд▓ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛? рдЗрд╕реЗ Anko рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, Android UI рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ DSL:

verticalLayout {
  padding = dip(30)
  editText {
    hint = "Name"
    textSize = 24f
  }
  button("Login") {
    textSize = 26f
  }
}

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

рдХреГрдкрдпрд╛ рд╕реНрдкрдВрджрди рдХреЗ рд▓рд┐рдП XML- рдЬреИрд╕реЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдкрд░рд┐рдЪрдп рди рджреЗрдВред

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

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдореИрдВ рд╕реНрдкрдВрджрди рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЧрдП рдПрдХреНрд╕рдПрдордПрд▓-рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рджреЗрдЦрдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛:

  1. рд╕реАрдЦрдиреЗ рдХреА рдПрдХ рдФрд░ рдмрд╛рдд - рдЦрд░реНрдЪ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдлреНрдпреВрдЪрд░реНрд╕ рд╕реАрдЦреЗрдВ ;P
  2. рд╕рдВрджрд░реНрдн-рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ - рдЖрдк рдПрдХреНрд╕рдПрдордПрд▓ рдФрд░ рдХреЛрдб рдХреЗ рдмреАрдЪ рд╕рдВрджрд░реНрдн рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рд╕рд┐рд░реНрдл рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╕рдВрдЬреНрдЮрд╛рдирд╛рддреНрдордХ рднрд╛рд░ рд╣реИред
  3. рдРрд╕реЗ рджрд┐рди рд░рд╣реЗ рд╣реИрдВ рдЬрдм рдореИрдВрдиреЗ рд╕реБрдмрд╣ рдЬрд╛рд╡рд╛ рдореЗрдВ рдФрд░ рджреЛрдкрд╣рд░ рдореЗрдВ рдкрд╛рдпрдерди рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд┐рдпрд╛ рд╣реИред рд░рд┐рдПрдХреНрдЯ рдХреЗ рд╕рд╛рде рдЖрдкрдХреЛ рдПрдХ рдХреЛрдбрдмреЗрд╕ рдореЗрдВ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ, рдмреИрдмреЗрд▓, рдЬреЗрдПрд╕рдПрдХреНрд╕, рдПрдЪрдЯреАрдПрдордПрд▓, рд╕реАрдПрд╕рдПрд╕ рдФрд░ рдмрд╣реБрдд рдХреБрдЫ рд╕рдордЭрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред
  4. рдлрд╝реНрд▓рдЯрд░ рдореЗрдВ XML рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдиреЗ рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ рдбрд╛рд░реНрдЯ рдиреЗ рддрд░реНрдХреЛрдВ рдХрд╛ рдирд╛рдо рджрд┐рдпрд╛ рд╣реИ рдЬреЛ XML рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдмрджрд▓ рджреЗрддрд╛ рд╣реИред
  5. рдбрд╛рд░реНрдЯ рдореЗрдВ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдбрд╛рд░реНрдЯрдлрдПрдордЯреА рд╣реИ рдЬреЛ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдкреНрд░рдпрд╛рд╕ рдХреЗ рдХреЛрдб рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЗрдВрдбреЗрдВрдЯ рдХрд░рддрд╛ рд╣реИред

рдПрдВрдбреНрд░реЙрдЗрдб рдХреА рддреБрд▓рдирд╛ рдореЗрдВ

  1. рдЖрдкрдХреЛ рд╡реИрд╕реЗ рднреА рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рддрд░реАрдХреЗ рд╕реЗ рд╕реАрдЦрдирд╛ рд╣реИ, рдЪреАрдЬреЛрдВ рдХреЛ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдФрд░ рддрд░реАрдХрд╛ рдХреНрдпреЛрдВ рдЬреЛрдбрд╝реЗрдВ?
  2. рдПрдВрдбреНрд░реЙрдЗрдб рдореЗрдВ рдПрдХреНрд╕рдПрдордПрд▓ рд▓реЗрдЖрдЙрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдкрд░рд┐рд╡рд░реНрддрди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреЗрдЬрд╝ рд╣реИ, рд▓реЗрдХрд┐рди рдлрд╝реНрд▓рдЯрд░ рдореЗрдВ рдЪрд▓рдирд╛ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рддрддреНрдХрд╛рд▓ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдПрдХреНрд╕рдПрдордПрд▓ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рд╡рд╣ рд▓рд╛рдн рдирд╣реАрдВ рдорд┐рд▓реЗрдЧрд╛ред
  3. рдПрдВрдбреНрд░реЙрдЗрдб рдПрдХреНрд╕рдПрдордПрд▓ + рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд╕рдВрдпреЛрдЬрди рдЬрдЯрд┐рд▓рддрд╛ рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдПрдХреНрд╕рдПрдордПрд▓ рд╕реНрдирд┐рдкреЗрдЯреНрд╕ рдХреЛ рдлреБрд▓рд╛рдХрд░ рдФрд░ рдПрдХреНрд╕рдПрдордПрд▓ рдЯреНрд░реА рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░рдирд╛ред
  4. рдлрд╝реНрд▓рдЯрд░ рдореЗрдВ рдЗрдВрд╕реНрдЯреЗрдВрдЯ рд░рди рдЗрддрдирд╛ рддреЗрдЬрд╝ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдпрд╣ рджреЗрдЦрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП XML рдореЙрдбрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛, рдЖрдк рдмрд╕ рдПрдХ рдХреБрдВрдЬреА рджрдмрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рддреБрд░рдВрдд рдкрд░рд┐рд╡рд░реНрддрди рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред
  5. рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд▓реЗрдЖрдЙрдЯ рдореБрджреНрджреЛрдВ рдХреА рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдПрдХреНрд╕рдПрдордПрд▓ рдореЗрдВ рд▓реЗрдЖрдЙрдЯ рдореБрджреНрджреЛрдВ рд╕реЗ рдЕрд▓рдЧ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдЪреАрдЬреЛрдВ рдХреЗ рджреЛ рд╕реЗрдЯ рд╕рдордЭрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред

рдореИрдВ рдПрдХ рдХрджрдо рдФрд░ рдЖрдЧреЗ рдмрдврд╝реВрдВрдЧрд╛ рдФрд░ pubspec.yaml рдХреЛ рд╣рдЯрд╛ рджреВрдВрдЧрд╛ рдФрд░ рдЗрд╕реЗ pubspec.dart рд╕реЗ рдмрджрд▓ рджреВрдВрдЧрд╛ рдФрд░ рдбрд╛рд░реНрдЯ рдХреЛрдб рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд░рдЦреВрдВрдЧрд╛ред

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

рдЗрд╕реЗ рдПрдВрдбреНрд░реЙрдЗрдб рдПрдХреНрд╕рдПрдордПрд▓ рдХреА рддрд░рд╣ 2-рддрд░рдлрд╛ рд╕рдВрдкрд╛рджрди (рдПрдХреНрд╕рдПрдордПрд▓/рд▓реЗрдЖрдЙрдЯ) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА, рд▓реЗрдХрд┐рди рдЖрдк рдмрд╛рдж рдореЗрдВ рдЕрдкрдирд╛ рд▓реЗрдЖрдЙрдЯ рд╕рд╣реЗрдЬ рд▓реЗрдВрдЧреЗред рдпрджрд┐ рдЖрдкрдХреЛ рдЗрд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддреЛ рдЖрдк рдХреЛрдб рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ (рдЙрдореНрдореАрдж рд╣реИ) рдмрд╕ рдХреБрдЫ рддрд░реНрдХ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред

рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд╛рддрдЪреАрдд рдкреБрд░рд╛рдиреА рд╣реИ рдФрд░ рд╣рд╛рдБ рдпрд╣ рдХрд╛рдлреА рдЧрд░реНрдо рд╣реЛ рд░рд╣реА рдереА, рд▓реЗрдХрд┐рди рдореИрдВ рдпрд╣рд╛рдБ рдЬреЛ рдХреБрдЫ рд╣реЛ рд░рд╣рд╛ рд╣реИ рдЙрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдмрддрд╛рдирд╛ рдЪрд╛рд╣реВрдБрдЧрд╛ред

рд╕реНрдкрдВрджрди рдирдпрд╛ рд╣реИред рдпрд╣ рдЪреАрдЬреЛрдВ рдХреЛ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдмрд┐рд▓реНрдХреБрд▓ рдирдпрд╛ рддрд░реАрдХрд╛ рд╣реИред рд╣рд╛рдВ, рдЗрд╕рдиреЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рддрд┐рдорд╛рди рд╕реЗ рдЙрдзрд╛рд░ рд▓рд┐рдпрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдЕрдкрдиреЗ рд╕рдорд╛рди рдЪрд░рдгреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЗрд╕рдХрд╛ рд╕реНрдкрдВрджрди рдЯреАрдо рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╕реЗ рд╕реНрдкрдВрджрди рдореЗрдВ рдЖрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдирд╛ рд╣реИ, рдпрд╣ рдХреЗрд╡рд▓ рдХреБрдЫ рдирдпрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд░реБрдЪрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИред Google рдЗрд╕реЗ рджреБрдирд┐рдпрд╛ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╡реЗ рдЗрд╕рдХреЗ рд╕рд╛рде рдЙрддреНрдкрд╛рджрдХ рд░рд╣реЗ рд╣реИрдВ рдпрд╣ред рдореИрдВ @Hixie рдХреЗ рд╕рд╛рде рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ UI рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП JSX рд╕реЗ рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИред рд╣рд╛рдБ рдпрд╣ рд╢реБрджреНрдз рдбрд╛рд░реНрдЯ рдХреЛ рд╕рд╣реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рдФрд░ рдХреНрд░рд┐рдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдкрдХреЗ рдХреЛрдб рдХреЛ рдбреАрдмрдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред

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

рд╡реИрд╕реЗ рдпрд╣ рдореЗрд░реА рд░рд╛рдп рд╣реИред рдПрдХ рдирдИ рд╡рд┐рд╢рд╛рд▓ рдЪрд░реНрдЪрд╛ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ред рдХреЗрд╡рд▓ рдЗрд╕ рддрдереНрдп рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ JSX рдПрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ / рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдореБрджрд╛рдп рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЙрдирдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдбрд╛рд░реНрдЯ / рд╕реНрдкрдВрджрди рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ JSX рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП JSX рдЬрд╕реНрдЯ рдХреЛ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╕реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рд▓рдЧрддрд╛ рд╣реИред

рд╡рд╛рд╣, рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ xD рд▓рд┐рдЦ рд╕рдХрддреЗ рдереЗ

@ рд░реЙрдХрд╡реЛрд▓ ,

рд╕реАрдЦрдиреЗ рдХреА рдПрдХ рдФрд░ рдмрд╛рдд - рдЦрд░реНрдЪ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдлреНрдпреВрдЪрд░реНрд╕ рд╕реАрдЦреЗрдВ ;P

рд╕реАрдЦрдиреЗ рдХреА рдмрд╛рдд рд╡рд░реНрддрдорд╛рди рдкреБрдирд░рд╛рд╡рд░реНрддреА рд╡рд╕реНрддреБ рдирд┐рд░реНрдорд╛рдг рд░рд╛рдХреНрд╖рд╕реА рдХреЛ рд╕рд░рд▓ рдФрд░ рд░реЛрдЬрдорд░реНрд░рд╛ рдХреЗ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рджреЗрд╡реЛрдВ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдХрд░рд╛рддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди рд╣реИ рдХрд┐ рд▓реЛрдЧ рдЗрд╕реЗ рд╕реАрдЦрдирд╛ рдкрд╕рдВрдж рдХрд░реЗрдВрдЧреЗред

рд╕рдВрджрд░реНрдн-рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ - рдЖрдк рдПрдХреНрд╕рдПрдордПрд▓ рдФрд░ рдХреЛрдб рдХреЗ рдмреАрдЪ рд╕рдВрджрд░реНрдн рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рд╕рд┐рд░реНрдл рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╕рдВрдЬреНрдЮрд╛рдирд╛рддреНрдордХ рднрд╛рд░ рд╣реИред

рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рдХреЛрдИ рд╕рдВрджрд░реНрдн-рд╕реНрд╡рд┐рдЪ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдкрд░реНрдпрд╛рд╡рд░рдг рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ рдЬреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ UI/UX рдХреНрд▓реАрдирд░ рдмрдирд╛рддрд╛ рд╣реИред

рддрдм рдпрд╣ рд╕реНрдкрдВрджрди рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧрд╛ рдЬрд┐рд╕реЗ рдХрднреА рднреА рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рдирд╣реАрдВ рд╣реИ

рдХреНрдпреЛрдВ рдирд╣реАрдВ? рддрдм рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рдирд╣реАрдВ рд╣реИред

@рдлреНрд░рд╛рдВрдЬрд╕рд┐рд▓реНрд╡рд╛

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рд╕реНрдкрдВрджрди рдХреА рдЯреАрдо рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╕реЗ рд╕реНрдкрдВрджрди рдореЗрдВ рдЖрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдирд╛ рд╣реИ

рд╕рдЪ рдореЗрдВ !!! рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╣рд╛рд╡реА рд╣реИ рдФрд░ рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдХреНрд░реЙрд╕ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдЯреВрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдореЛрдмрд╛рдЗрд▓ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреА рдХреБрд▓ рд╕рдВрдЦреНрдпрд╛ рд╕реАрдорд┐рдд рд╣реИ, рдХреНрдпрд╛ рдЖрдкрдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдлрд╝реНрд▓рдЯрд░ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд▓реЛрдЧреЛрдВ рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рд╣реЛрдо рд░рди рд╣рд┐рдЯ рдмрди рд╕рдХрддрд╛ рд╣реИ?

рд╣рд╛рдБ рдпрд╣ рд╢реБрджреНрдз рдбрд╛рд░реНрдЯ рдХреЛ рд╕рд╣реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рдФрд░ рдХреНрд░рд┐рдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдкрдХреЗ рдХреЛрдб рдХреЛ рдбреАрдмрдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред

рдпрд╣ рд╕рд╣реА рдХрдерди рдирд╣реАрдВ рд╣реИред JSX рдХреЛрдб рдХреЛ рдбрд┐рдмрдЧ рдХрд░рдирд╛, рдЬреЛ рдХрд┐ рд╕рд┐рд░реНрдл рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛрдб рд╣реИ, рдХреЛрдИ рдЖрд╕рд╛рди рдпрд╛ рдХрдард┐рди рдирд╣реАрдВ рд╣реИ, рдпрд╣ рд╡рд╣реА рд╣реИред

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

рдХреМрди рдкрд░рд╡рд╛рд╣ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдордВрдЪ рдореЗрдВ рдХрд┐рддрдирд╛ рдХрд╛рдо рд░рдЦрд╛ рдЧрдпрд╛ рдерд╛? рджреЗрд╡ рдХреЗрд╡рд▓ рдирд╡реАрдирддрдо рддрдХрдиреАрдХ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬреЛ рдХреЛрдб рдкрдардиреАрдпрддрд╛ рдФрд░ рдЙрддреНрдкрд╛рджрдХрддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░реЗрдВред рдХреЛрдИ рднреА рджреЗрд╡ рдкреБрд░рд╛рдиреА рдФрд░ рдЕрдкреНрд░рдЪрд▓рд┐рдд рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдЬрдм рдирдИ рдЪреАрдЬреЗрдВ рдмреЗрд╣рддрд░ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИрдВред

рдореИрдВ рдпрд╣ рдЬрд╛рдирдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдХреЛрдб рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЬрд╛рджреБрдИ рд╕рд┐рдВрдЯреЗрдХреНрд╕ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЬреЛ рд╣реЛ рд░рд╣рд╛ рд╣реИ рдЙрд╕ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рд╕рднреА рдХрд╛рдо рдУрд╡рд░рд╣реЗрдб рдЬреЛрдбрд╝ рд░рд╣реЗ рд╣реИрдВред

рдпрд╣ рдмрдХрд╡рд╛рд╕ рд╣реИ, рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ JSX рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ, рдпрд╣ рдПрдХ рдЫреЛрдЯреА рд╕реА рдкрд░рдд рд╣реИ рдЬреЛ рд▓рдЧрднрдЧ рдПрдХ рдХреЛ рдПрдХ рдореЗрдВ рдмрджрд▓ рджреЗрддреА рд╣реИ рд▓реЗрдХрд┐рди рдмрд╣реБрдд рд╕рд╛рд░реЗ рд▓рд╛рдн рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИред рдпрджрд┐ рдЖрдк рдореБрдЭрд╕реЗ рдкреВрдЫреЗрдВ рддреЛ рдирдЧрдгреНрдп рд╕рдВрдХрд▓рди рд╕рдордп рдУрд╡рд░рд╣реЗрдбред

рдХреЗрд╡рд▓ рдЗрд╕ рддрдереНрдп рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ JSX рдПрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ / рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдореБрджрд╛рдп рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЙрдирдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдбрд╛рд░реНрдЯ / рд╕реНрдкрдВрджрди рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ JSX рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП JSX рдЬрд╕реНрдЯ рдХреЛ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╕реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рд▓рдЧрддрд╛ рд╣реИред

JSX рдХреЛ рдбрд╛рд░реНрдЯ/рд╕реНрдкрдВрджрди рдХреЗ рд▓рд┐рдП рднреА рдмрдврд╝рд┐рдпрд╛ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдУрд╡рд░рдХрд┐рд▓ рдирд╣реАрдВ рд╣реИред рдХреНрдпрд╛ рдХреЛрдИ рдЕрдЪреНрдЫрд╛ рдХрд╛рд░рдг рд╣реИ рдХрд┐ JSX рдбрд╛рд░реНрдЯ/рд╕реНрдкрдВрджрди рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛? рдЕрдЧрд░ рдореБрдЭреЗ рдЗрд╕реЗ рдХреЛрдб рдХрд░рдирд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдЬрд╛рд░реА рдХрд░рдирд╛ рд╣реИ, рддреЛ рдпрд╣ рдбрд╛рд░реНрдЯ/рд╕реНрдкрдВрджрди рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реЛрдЧрд╛?

рдЖрдЗрдП @xinthink рд╕реЗ рдареЛрд╕ рдЙрджрд╛рд╣рд░рдг рд▓реЗрдВ:

рдЕрднреА рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рдереЛрдбрд╝рд╛ рд╡рд░реНрдмреЛрдЬрд╝ рд╣реИ, рдореБрдЭреЗ рдорд╛рд░реНрдЬрд┐рди рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рд╕реЗ new рдХреБрдЫ рдХрд░рдирд╛ рд╣реЛрдЧрд╛: margin: new EdgeInsets.symmetric(horizontal: 4.0) , рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдпрджрд┐ рдЖрдк рдмрд╛рдПрдБ рдФрд░ рджрд╛рдПрдБ рдорд╛рд░реНрдЬрд┐рди рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЗрд╕реЗ рдХреИрд╕реЗ рд╡реНрдпрдХреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ? рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЖрдЗрдП рд╣рдо рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рд▓реЗрддреЗ рд╣реИрдВ, рдФрд░ рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рд╡рд┐рднрд┐рдиреНрди рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕реЛрдВ рдореЗрдВ рдХреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛ред

  // Flutter as written today
  return new Container(
    margin: new EdgeInsets.symmetric(horizontal: 4.0),
    decoration: new ShapeDecoration(shape: new CircleBorder(), color: Colors.blue[100]),
    child: new AnimatedCrossFade(
      duration: const Duration(seconds: 3),
      firstChild: const FlutterLogo(style: FlutterLogoStyle.horizontal, size: 100.0),
      secondChild: const FlutterLogo(style: FlutterLogoStyle.stacked, size: 100.0),
      crossFadeState: _showHorizontal ? CrossFadeState.showFirst : CrossFadeState.showSecond,
    ),
  );
  // Flutter as written later this year once we remove "new" and "const" keywords
  return Container(
    margin: EdgeInsets.symmetric(horizontal: 4.0),
    decoration: ShapeDecoration(shape: CircleBorder(), color: Colors.blue[100]),
    child: AnimatedCrossFade(
      duration: Duration(seconds: 3),
      firstChild: FlutterLogo(style: FlutterLogoStyle.horizontal, size: 100.0),
      secondChild: FlutterLogo(style: FlutterLogoStyle.stacked, size: 100.0),
      crossFadeState: _showHorizontal ? CrossFadeState.showFirst : CrossFadeState.showSecond,
    ),
  );

рдЖрдк рдХреИрд╕реЗ рд╕рд▓рд╛рд╣ рджреЗрдВрдЧреЗ рдХрд┐ рд╣рдо рдЗрди _рд╕рдЯреАрдХ_ рд╢рдмреНрджрд╛рд░реНрдереЛрдВ рдХреЛ рд╡реНрдпрдХреНрдд рдХрд░реЗрдВ?

  // Remove "new" and "const", infer the class for enum values, allow int literals for doubles
  return Container(
    margin: EdgeInsets.symmetric(horizontal: 4),
    decoration: ShapeDecoration(shape: CircleBorder(), color: Colors.blue[100]),
    child: AnimatedCrossFade(
      duration: Duration(seconds: 3),
      firstChild: FlutterLogo(style: horizontal, size: 100),
      secondChild: FlutterLogo(style: stacked, size: 100),
      crossFadeState: _showHorizontal ? showFirst : showSecond,
    ),
  );

Babel.js рдХреА рдпрд╣ рд╕рд╛рдл-рд╕реБрдерд░реА рдЫреЛрдЯреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╣реИ, рдЬрд╣рд╛рдБ рдЖрдк JSX рдЯрд╛рдЗрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдЗрд╕реЗ рд╕рд╛рджреЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдмрджрд▓ рджреЗрддрд╛ рд╣реИ:
https://babeljs.io/repl/# ?babili=false&evaluate=true&lineWrap=false&presets=es2015%2Creact%2Cstage-0&code=function%20hello()%20%7B%0A%20%20return%20%3Cdiv%3EHello% 20рд╡рд░реНрд▓реНрдб!%3C%2Fdiv%3E%3B%0A%7D

рдореИрдВ DSX рд╕реЗ рдбрд╛рд░реНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╛рди рдХрд╛рд░реНрдп рдХрд░реВрдВрдЧрд╛ред рдХреЗрд╡рд▓ рдЕрд╡рдзрд╛рд░рдгрд╛ рдХрд╛ рдкреНрд░рдорд╛рдг, рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕рдореЗрдВ рдореБрдЭреЗ рдХрд┐рддрдирд╛ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ...

Airbnb рдХреА рд╕реНрдЯрд╛рдЗрд▓ рдЧрд╛рдЗрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдФрд░ рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рд╕рднреА рдЪрд╛рдЗрд▓реНрдб рдПрд▓рд┐рдореЗрдВрдЯ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ child рдкреНрд░реЙрдкрд░реНрдЯреАрдЬ рдХреЛ рдореИрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, "DSX" рдореЗрдВ @ рд╣рд┐рдХреНрд╕реА рдХрд╛ рдирд╡реАрдирддрдо рдЙрджрд╛рд╣рд░рдг рдпрд╣рд╛рдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

return (
  <Container
    margin={EdgeInsets.symmetric(horizontal: 4)}
    decoration={ShapeDecoration(shape: CircleBorder(), color: Colors.blue[100])}
  >
    <AnimatedCrossFade
        duration={Duration(seconds: 3)}
        crossFadeState={_showHorizontal ? showFirst : showSecond}
    >
      <FlutterLogo style={horizontal} size={100} />
      <FlutterLogo style={stacked} size={100} />
    </AnimatedCrossFade>
  </Container>
);

рдЕрдЧрд░ рдЗрд░рд╛рджрд╛ рдкрдардиреАрдпрддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдирд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдбрд╛рд░реНрдЯ рд╣реБрдХреБрдо рдореЗрдВ рдЬреАрдд рдЬрд╛рдПрдЧрд╛ред

рдЖрдкрдХреЛ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреА рд╣реЛрдЧреА рдХрд┐ рдЯреИрдЧ рдореЗрдВ рдХреНрдпрд╛ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИ (рд╕рдВрднрд╡рддрдГ рдХреЗрд╡рд▓ Widget s), рдпрд╛ рдХрд┐рддрдиреЗ рдмрд╛рд▓ рддрддреНрд╡реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛/рдЕрдиреБрдорддрд┐ рд╣реИред

рдпрджрд┐ рдЖрдкрдХрд╛ рд▓рдХреНрд╖реНрдп рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реЗ HTML рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдирд╛ рд╣реИ, рддреЛ JSX рдПрдХ рдордзреНрдп рдореИрджрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдмрд╣реБрдд рдорд╛рдпрдиреЗ рд░рдЦрддрд╛ рд╣реИред рдХреНрдпреЛрдВрдХрд┐ рдЬрдм рдЖрдк рджрд┐рди рдХреЗ рдЕрдВрдд рдореЗрдВ рдЯреИрдЧ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ React.createElement('div', null, 'foo') <div>foo</div> рд╕реЗ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рдЦрд░рд╛рдм рд╣реИред

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

рдПрдХреНрд╕рдПрдордПрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдпрд╣ рд╕рдХреНрд╖рдо рд╣реЛрддрд╛ рд╣реИ... рджреЗрдЦрд┐рдП, рдмрд╛рдд рдХрд░рддреЗ рд╣реБрдП 5 рдорд╣реАрдиреЗ рд╣реЛ рдЧрдП рд╣реИрдВ, рдЕрдм рдореИрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдХреБрдЫ рд╕рдордп рджреЗрдВ (рдореЗрд░реЗ рдкрд╛рд╕ рдкреВрд░реНрдгрдХрд╛рд▓рд┐рдХ рдиреМрдХрд░реА рд╣реИ рдФрд░ рд╕рдкреНрддрд╛рд╣рд╛рдВрдд рдореЗрдВ рдХреЗрд╡рд▓ 4 рдШрдВрдЯреЗ рд╣реА рдЫреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реВрдВ)ред

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

  1. рдХреНрд▓реЛрдЬрд┐рдВрдЧ рдЯреИрдЧ рдбрд┐рдХреНрд▓реЗрд░реЗрд╢рди рд╕реЗ рдмрдЪреНрдЪреЛрдВ рдмрдирд╛рдо рдкреНрд░реЙрдкрд░реНрдЯреАрдЬ рдХреА рд╕рдордЭ рдмрдврд╝рддреА рд╣реИред рдпреВрдЖрдИ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдЧрд╣рд░рд╛рдИ рд╕реЗ рдШреЛрдВрд╕рд▓рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдПрдХ рдЕрдЬреНрдЮрд╛рдд рдмрдирд╛рдо рд╕реНрдкрд╖реНрдЯ рдЯреИрдЧ рд╣реЛрдиреЗ рд╕реЗ) рдмрдЪреНрдЪреЛрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдФрд░ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓рддреА рд╣реИред рдпрд╣ рдореБрдЭреЗ рдШрдЯрдХреЛрдВ рдХреЗ рдмреАрдЪ рдХреЛрдб рдХреЛ рдЗрдзрд░-рдЙрдзрд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдФрд░ рдмрд╣реБрдд рд╣реА рдШреЛрд╖рдгрд╛рддреНрдордХ рд░реВрдк рд╕реЗ рджреЗрдЦрддрд╛ рд╣реИ рдХрд┐ рдХрдм рдХреБрдЫ рдЬрдЧрд╣ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдВрдж рдЯреИрдЧред) рдпрд╣ рдХрдИ рдиреЗрд╕реНрдЯреЗрдб рдХреЗ рд╕рд╛рде рдкреЗрдЪреАрджрд╛ рд╣реИ)ред

  2. рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░реНрд╕ рдХреЗ рдЕрдВрджрд░ рдХрдИ рдиреЗрд╕реНрдЯреЗрдб рдШрдЯрдХреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд░реА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореБрдЭреЗ "рдХреЙрд▓рдмреИрдХ рдирд░рдХ" рдХреЗ рд▓рд┐рдП рдлреНрд▓реИрд╢рдмреИрдХ рджреЗрддреА рд╣реИред рдпрд╣ рдЬреЗрдПрд╕ рдХрд╛ рдмрд╣реБрдд рд╣реА рджрд░реНрджрдирд╛рдХ рдпреБрдЧ рдерд╛ рдЬреЛ рдмреЗрд╣рддрд░ рд╣реЛрдиреЗ рд▓рдЧрд╛ рд╣реИ, рдЗрд╕рдореЗрдВ рд╡рд╛рдкрд╕ рдЬрд╛рдирд╛ рдПрдХ рдХрджрдо рдкреАрдЫреЗ рд╣рдЯрдиреЗ рдЬреИрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИред

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

рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕рдореБрджрд╛рдп рдореЗрдВ рд░рд┐рдПрдХреНрдЯ рдХреЗ рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реЛрдиреЗ рдХрд╛ рдПрдХ рдореБрдЦреНрдп рдХрд╛рд░рдг JSX рдХрд╛ рд╕рдорд░реНрдерди рдерд╛ред

рдЗрддрдиреЗ рдЕрдЪреНрдЫреЗ рдлреАрдЪрд░ рдЕрдиреБрд░реЛрдз рдкрд░ "рдбрд╛рдЙрди рд╡реЛрдЯ" рджреЗрдЦрдирд╛ рд╡рд╛рдХрдИ рдирд┐рд░рд╛рд╢рд╛рдЬрдирдХ рд╣реИред рдпрд╣ рдкрдардиреАрдпрддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЕрдкрдирд╛рдиреЗ рдореЗрдВ рддреЗрдЬреА рд▓рд╛рддрд╛ рд╣реИред

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

рдирдП рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдФрд░ рдЬрдЧрд╣ рдмрдирд╛рдПрдВ!

@jayjun рдпрд╣ рдЕрджреНрднреБрдд рд▓рдЧ рд░рд╣рд╛ рд╣реИ! рдХреНрдпрд╛ рдореИрдВ рдЗрд╕реЗ рдХрд╣реАрдВ рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдБ?

@sanketsahusoft рдмрд╣реБрдд рдЬрд▓реНрдж рдЪрд┐рдВрддрд╛ рди рдХрд░реЗрдВ рдЖрдк рдореЗрд░реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЖрдЬрдорд╛ рд╕рдХреЗрдВрдЧреЗ рдФрд░ рдпрд╣ @jayjun рд╕реЗ рднреА рдмреЗрд╣рддрд░ рд╣реИред

рддреНрд╡рд░рд┐рдд рдЕрджреНрдпрддрди: 2 рд╕рдкреНрддрд╛рд╣рд╛рдВрдд рдкрд╣рд▓реЗ рдореБрдЭреЗ рдпреВрдЖрдИ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛, рдкрд┐рдЫрд▓реЗ рд╕рдкреНрддрд╛рд╣рд╛рдВрдд рдореЗрдВ рдореБрдЭреЗ рдкрд╛рд░реНрд╕рд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛ рдФрд░ рдЖрдзрд╛ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛ред рдЕрдЧрд░ рдореИрдВ рд╕реБрдкрд░рдмреЙрд╡реЗрд▓ рд╕реЗ рдмрдЪрддрд╛ рд╣реВрдВ рддреЛ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд╕рдкреНрддрд╛рд╣рд╛рдВрдд рдореЗрдВ рдореИрдВ рдЗрд╕реЗ рдЦрддреНрдо рдХрд░рдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░рддрд╛ рд╣реВрдВ;)

рдореЗрд░реЗ рдкрд╛рд╕ рдЬрд┐рджреНрджреА рдЬреИрд╕реА рдореЛрдЯреА рддреНрд╡рдЪрд╛ рдФрд░ рдЦрдЪреНрдЪрд░ рд╣реИ рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЗрди рдбрд╛рдЙрди-рд╡реЛрдЯреНрд╕ рдкрд░ рдзреНрдпрд╛рди рднреА рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЙрдиреНрд╣реЗрдВ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

рдХрд╛рд░реНрд▓реЛрд╕ред

рдХреНрдпрд╛ рдЗрд╕рд╕реЗ рдХреНрд▓реЛрдЬрд┐рдВрдЧ рдЯреИрдЧ рдХрд╛ рдЯреНрд░реИрдХ рдЦреЛрдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рдореЗрдВ рдорджрдж рдорд┐рд▓реЗрдЧреА?
рдЖрдЗрдбрд┐рдпрд╛: рдСрдЯреЛ рдЬреЗрдирд░реЗрдЯреЗрдб рдХреНрд▓реЛрдЬрд┐рдВрдЧ рдЯреИрдЧ

рдпрд╣рд╛рдБ @Hixie рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдорд╛рд░реНрдХрдЕрдк рд╕рд┐рдВрдЯреИрдХреНрд╕ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

<Container margin=<EdgeInsets.symmetric horizontal=4 />
           decoration=<ShapeDecoration shape=<CircleBorder> color={{ Colors.blue[100] }} />>
    <AnimatedCrossFade duration=<Duration seconds=3 />
                       crossFadeState={{ _showHorizontal ? showFirst : showSecond }}>
      <FlutterLogo style=horizontal size=100 />
      <FlutterLogo style=stacked size=100 />
    </AnimatedCrossFade>
</Container>

@abarth , рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдХреА рдЧрдИ рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдПрдХ рддреАрд╕рд░реА рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдЬреЛ рдПрдХ рдФрд░ рдЯреИрдЧ рд╣реЛрдиреЗ рдкрд░ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдХреЛ рд╕рд░рд▓ рдмрдирд╛рддреА рд╣реИред
рдЬреЗрдПрд╕рдПрдХреНрд╕ рдореЗрдВ рд╣реИ:
1 - <tag attrib=""/> рдпрд╛ <tag attrib=''/>
2 - <tag attrib={}/>
рдЖрдкрдиреЗ рдПрдХ рдФрд░ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛:
3 - <tag attrib=<anotherTag.../>/>
JSX рдХреЗ рд╕рд╛рде рдЖрдкрдХреЛ рдЗрд╕реЗ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд▓рд┐рдЦрдирд╛ рд╣реЛрдЧрд╛:
<tag attrib={<anotherTag.../>}/>

@cbazza рд╣рд╛рдБ, рд╕реНрдкрдВрджрди рдореЗрдВ рддреАрд╕рд░рд╛ рдорд╛рдорд▓рд╛ рдХрд╛рдлреА рд╕рд╛рдорд╛рдиреНрдп рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд { рдиреЗрд╕реНрдЯрд┐рдВрдЧ рдХреЛ рдЫреЛрдбрд╝рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

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

@cbazza рдХреВрд▓, рдореИрдВ FutureBuilder рдЬреИрд╕реЗ рдмрдВрдж рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдХрдИ рд╡рд┐рдЬреЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдХреБрдЫ рдРрд╕рд╛ рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддрд╛ рд╣реИ,

return new FutureBuilder(
  future: Firestore.instance
      .collection('stuff')
      .document(id)
      .get(),
  builder: (context, snapshot) {
    if (!snapshot.hasData) {
      switch (snapshot.connectionState) {
        case ConnectionState.waiting:
          return const Text('Loading...');
        default:
          return new Text('${id} not found');
      }
    }

    return new Text(snapshot.data['name']);
  },
);

@jayjun , рд╣рд╛рдБ, рдпрд╣ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдПрдХреНрд╕рдПрдордПрд▓ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╣реИ рдФрд░ рдЬрдм рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди ({} рдХреЗ рдЕрдВрджрд░ рд╕рдм рдХреБрдЫ) рдХреА рдмрд╛рдд рдЖрддреА рд╣реИ, рддреЛ рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдЯреЗрдХреНрд╕реНрдЯ рдмреНрд▓реЙрдм рдмрди рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЗрд╕реЗ рд╢рдмреНрджрд╢рдГ рд▓рд┐рдЦрддрд╛ рд╣реИред

@xinthink

рдХреНрдпрд╛ рдПрдВрдбреНрд░реЙрдЗрдб рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдХреЛрдЯрд▓рд┐рди рдЯреАрдо рдиреЗ рдЬреЛ рдХрд┐рдпрд╛ рд╣реИ, рдХреНрдпрд╛ рдбреАрдПрд╕рдПрд▓ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛?

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рдлрд╝реНрд▓рдЯрд░ рдХреЗ рд╕рд╛рде рдХреЛрдЯрд▓рд┐рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗред рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ, рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рдХрд┐ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ рдбрд╛рд░реНрдЯ рдореЗрдВ рдкрд╣рд┐рдпреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХреНрдпреЛрдВ рдХрд┐рдпрд╛?

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

рдмрд╕ рдХреЗрд╣ рд░рд╣рд╛ рд╣реВред

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

рдбрд╛рд░реНрдЯ, рдХреЛрдЯрд▓рд┐рди рдФрд░ рд╕реНрд╡рд┐рдлреНрдЯ рд╕рднреА рдореЗрдВ рд╕рдорд╛рдирддрд╛рдПрдВ рд╣реИрдВ:
https://sethladd.github.io/swift-is-like-kotlin-and-kinda-like-dart/

рдореБрдЭреЗ рд╡рд╣ рдкрд╕рдВрдж рд╣реИ :

  1. рдпрджрд┐ рдЖрдк рдЬрд╛рд╡рд╛ рд╕реЗ рдЖрддреЗ рд╣реИрдВ рддреЛ рдбрд╛рд░реНрдЯ рдЕрдзрд┐рдХ рдкрд░рд┐рдЪрд┐рдд рд╣реИред
  2. рдЖрдк рдЕрдкрдиреЗ рдбрд╛рд░реНрдЯ рдХреМрд╢рд▓ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рд╡реЗрдм рдкреЗрдЬ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рдЬреЛ рдРрдк рдмрдирд╛рддреЗ рд╕рдордп рдореВрд▓реНрдпрд╡рд╛рди рд╣реИ, рдЖрдк рд╡реЗрдм рдкрд░ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╡реЗрдмрд╡реНрдпреВ рдореЗрдВ рджрд┐рдЦрд╛ рд╕рдХрддреЗ рд╣реИрдВ) рдЬрд╣рд╛рдВ рдпрд╣ рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ (рд╢рд╛рдпрдж рддреНрд╡рд░рд┐рдд рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкреГрд╖реНрда рдпрд╛ рдЙрддреНрдкрд╛рдж рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рдЬреЛ Google рдЕрдиреБрдХреНрд░рдорд┐рдд рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ)ред
  3. рдбрд╛рд░реНрдЯ рд╢реБрд░реВ рд╕реЗ рд╣реА рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмрд╛рдж рдореЗрдВ рдХрд┐рд╕реА рднрд╛рд╖рд╛ рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИред

рдореВрд▓ рд░реВрдк рд╕реЗ рдпрд╣реА рдХрд╛рд░рдг рд╣реИрдВ рдХрд┐ рдореИрдВрдиреЗ рдбрд╛рд░реНрдЯ рдХреЛ рдХреЛрдЯрд▓рд┐рди / рд╕реНрд╡рд┐рдлреНрдЯ / рд░рд┐рдПрдХреНрдЯ рдкрд░ рдЪреБрдирд╛ред

_рд╣рд╛рд▓рд╛рдВрдХрд┐ рдбрд╛рд░реНрдЯ рдФрд░ рд╕реНрд╡рд┐рдлреНрдЯ рдХреЛ рдЧреВрдЧрд▓ рдХреЗ рдирдП рдлреНрдпреВрд╢рд┐рдпрд╛ рдУрдПрд╕ рдореЗрдВ рд╕рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рдореБрдЭреЗ рднреНрд░рдорд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИред_

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

рд╣рд╛рдВ, рдЖрдк рдбрд╛рд░реНрдЯ рдХреЗ рд╕рд╛рде рд╡реЗрдм рдкреЗрдЬ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЗрд╕рдореЗрдВ рдХреЛрдИ рдмрдбрд╝реА рднреВрдорд┐рдХрд╛ рдирдЬрд░ рдирд╣реАрдВ рдЖрддреАред рд╡реЗрдм рдкрд░ рдЕрдЪреНрдЫрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд░рдиреЗ рд╡рд╛рд▓реА рдПрдХрдорд╛рддреНрд░ рдЕрдиреНрдп рднрд╛рд╖рд╛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╢реАрд░реНрд╖ 3 рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рд╡реЗрдм рдврд╛рдВрдЪреЗ рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдПрдХреАрдХреГрдд рд╣реИред

рд╡реЗрдм рдкрд░ рд░рд┐рдПрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╡рд┐рднрд┐рдиреНрди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ:
https://github.com/Workiva/over_react#fluent -style-component-consumption
рджреЛрдиреЛрдВ рдбрд╛рд░реНрдЯ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ JSX рдХреЗ рдЦрд┐рд▓рд╛рдл рдХреЛрдИ рдореМрдХрд╛ рдирд╣реАрдВ рд╣реИ !!!

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

рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХрдм рддрдХ? рдореБрдЭреЗ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛!

рдореИрдВрдиреЗ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рд░рд┐рдПрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдФрд░ JSX рдиреЗ рдореЗрд░реА рдЙрддреНрдкрд╛рджрдХрддрд╛ рдХреЛ рджрд╕ рдЧреБрдирд╛ рдмрдврд╝рд╛ рджрд┐рдпрд╛ред рдпрд╣ рдПрдХ рд╡рд┐рд╡рд╛рджрд╛рд╕реНрдкрдж рдореБрджреНрджрд╛ рдирд╣реАрдВ рд╣реИ: рдЕрдиреНрдп рдЯреАрдореЛрдВ рдиреЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдХрд┐ рдпрд╣ рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛, рддреЛ рд╕реНрдкрдВрджрди рдХреНрдпреЛрдВ рдирд╣реАрдВ? (рдмрдпрд╛рдирдмрд╛рдЬреА: рдореИрдВрдиреЗ рдзрд╛рдЧрд╛ рдкрдврд╝рд╛... (рдЪреЗрд╣рд░реЗ рдХреА рд╣рдереЗрд▓реА))

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

рдХреБрдЫ рджрд┐рд▓рдЪрд╕реНрдк рдЪреАрдЬреЗрдВ рдЬрд┐рдирдХреЗ рд╕рд╛рде рдореИрдВ рдкреНрд░рдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ:
1) рдмрд╛рд▓ рдЯреИрдЧ рдкрд░ рдПрдХреНрд╕рдПрдордПрд▓ рдиреЗрдорд╕реНрдкреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рддрд╛рдХрд┐ рд╡реЗ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдореЗрдВ рд╕рд╣реА рдбрд╛рд░реНрдЯ рдирд╛рдорд┐рдд рддрд░реНрдХ рдХреЗ рд╕рд╛рде рд╕рдореНрдорд┐рд▓рд┐рдд рд╣реЛ рдЬрд╛рдПрдВред
2) рдЧреБрдгреЛрдВ рдХреА рддрд░рд╣ рд╢реИрд▓реА рдХреЛ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдСрдкрд░реЗрдЯрд░ рдХреЛ рдлреИрд▓рд╛рдПрдВ рддрд╛рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдорд╛рдирдЪрд┐рддреНрд░ рдореЗрдВ рдПрдХреНрд╕рдПрдордПрд▓ рдХреЗ рдмрд╛рд╣рд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд/рд╕рдореВрд╣реАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ рдФрд░ рдлрд┐рд░ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рд╛рдордЧреНрд░реА рдЬреИрд╕реЗ рдЯреИрдЧ рдкрд░ рд▓рд╛рдпрд╛ рдФрд░ рдлреИрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХреЗред
3) рд╕реНрдЯрд╛рдЗрд▓рд╕реАрдПрд╕рдПрд╕ рд╕рдВрдкрддреНрддрд┐ рдЬреЛ рд╕реАрдПрд╕рдПрд╕ рд╕реЗ рд╕реНрдкрдВрджрди рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдЙрддреНрдкрдиреНрди рдХрд░рддреА рд╣реИред

(1) рдФрд░ (2) рд╕рд╛рдорд╛рдиреНрдп рд╣реИрдВ рдЗрд╕рд▓рд┐рдП рд╕рднреА рдбрд╛рд░реНрдЯ рд╕реНрдкрдВрджрди рдХреЛрдб рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
(3) рд╕реНрдкрдВрджрди рд╡рд┐рдЬреЗрдЯ (рдХрдВрдЯреЗрдирд░, рдЯреЗрдХреНрд╕реНрдЯ, рдЖрджрд┐) рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИ рдФрд░ рдореИрдВ рдЕрднреА рдХреЗрд╡рд▓ рдЙрди 2 рдХреЛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

@ рдпреВрд░реА-рдХрдИ рдЧреБрдирд╛ рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рдХрд┐ рдЬреЗрдПрд╕ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдбрд╛рд░реНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИред
рдпрджрд┐ рдЖрдкрдиреЗ рдЙрдкрд░реЛрдХреНрдд рдЪрд░реНрдЪрд╛рдУрдВ рдХреЛ рдкрдврд╝рд╛ рд╣реЛрддрд╛, рддреЛ рдЖрдк рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рд╡рд┐рд╡рд╛рджрд╛рд╕реНрдкрдж рд╣реИ ред
рдореИрдВ рдирд╣реАрдВ рджреЗрдЦрддрд╛ рдХрд┐ 2 рднрд╛рд╖рд╛рдПрдВ рдПрдХ рд╕реЗ рдмреЗрд╣рддрд░ рдХреНрдпреЛрдВ рд╣реЛрдВрдЧреАред

рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рдХрд┐ рдЬреЗрдПрд╕ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдбрд╛рд░реНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИред

JSX рднрд╛рд╖рд╛ рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рд╢реАрд▓ рдврд╛рдВрдЪреЗ рдореЗрдВ UI/UX рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╡рд┐рдЪрд╛рд░ рд╣реИред рдЕрдЧрд░ рдореЗрд░реЗ рдкрд╛рд╕ рдЕрдзрд┐рдХ рдЦрд╛рд▓реА рд╕рдордп рд╣реЛрддрд╛ рддреЛ рдореИрдВ LSX рдбрд╛рд▓рддрд╛ рдЬреЛ рд▓реЛрдЧреЛ рдХреЗ рд▓рд┐рдП JSX рд╣реИ;)

рдореИрдВ рдирд╣реАрдВ рджреЗрдЦрддрд╛ рдХрд┐ 2 рднрд╛рд╖рд╛рдПрдВ рдПрдХ рд╕реЗ рдмреЗрд╣рддрд░ рдХреНрдпреЛрдВ рд╣реЛрдВрдЧреАред

рдЖрдк рдЖрдИрдУрдПрд╕ рдХреЛ рдСрдмреНрдЬреЗрдХреНрдЯрд┐рд╡-рд╕реА рдФрд░ рд╕реНрд╡рд┐рдлреНрдЯ (2 рднрд╛рд╖рд╛рдУрдВ) рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдЖрдк рдЬрд╛рд╡рд╛ рдФрд░ рдХреЛрдЯрд▓рд┐рди (2 рднрд╛рд╖рд╛рдУрдВ) рдХреЗ рд╕рд╛рде рдПрдВрдбреНрд░реЙрдЗрдб рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
...

рдореБрдЭреЗ рдЕрднреА рддрдХ JSX рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рддрд░реНрдХ рджреЗрдЦрдирд╛ рдмрд╛рдХреА рд╣реИред
рдЙрдкрд░реЛрдХреНрдд рдЪрд░реНрдЪрд╛рдУрдВ рдореЗрдВ рдХреЗрд╡рд▓ "рдпрд╣ рдмреЗрд╣рддрд░ рд╣реИ", "рдпрд╣ рдЙрддреНрдкрд╛рджрдХрддрд╛ рдмрдврд╝рд╛рддрд╛ рд╣реИ", рдпрд╛ рдЗрд╕реА рддрд░рд╣ рдХреЗ рддрд░реНрдХ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЛрдИ рддрд░реНрдХ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╢реБрджреНрдз рдбрд╛рд░реНрдЯ рдХреЛрдб рд╕реЗ рдмреЗрд╣рддрд░ рдХреНрдпреЛрдВ рдпрд╛ рдХреИрд╕реЗ рд╣реЛрдЧрд╛, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдирд┐рдпреЛрдЬрд┐рдд рднрд╛рд╖рд╛ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЬреЛ JSX- рдЬреИрд╕реЗ рдФрд░ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХреЛ рдХрдо рдХрд░реЗрдЧрд╛ред
рд╢реБрджреНрдз рдбрд╛рд░реНрдЯ рдХреЛрдб рдФрд░ рднреА рдЕрдзрд┐рдХред

@cbazza

рдЖрдк рдЖрдИрдУрдПрд╕ рдХреЛ рдСрдмреНрдЬреЗрдХреНрдЯрд┐рд╡-рд╕реА рдФрд░ рд╕реНрд╡рд┐рдлреНрдЯ (2 рднрд╛рд╖рд╛рдУрдВ) рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдЖрдк рдЬрд╛рд╡рд╛ рдФрд░ рдХреЛрдЯрд▓рд┐рди (2 рднрд╛рд╖рд╛рдУрдВ) рдХреЗ рд╕рд╛рде рдПрдВрдбреНрд░реЙрдЗрдб рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

рдпрд╣ JSX рдЪрд░реНрдЪрд╛ рд╕реЗ рдХреИрд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ? рдЗрд╕реЗ рдПрдХ рдлрд╛рдпрджрд╛ рдХреИрд╕реЗ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?
рдЖрдк рдЖрдИрдУрдПрд╕ рдкрд░ рд╕реНрд╡рд┐рдлреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдСрдмреНрдЬреЗрдХреНрдЯрд┐рд╡-рд╕реА рдХрд╛ рдЙрддреНрддрд░рд╛рдзрд┐рдХрд╛рд░реА рд╣реИред
рдЖрдк рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ рдХреЛрдЯрд▓рд┐рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рдЬрд╛рд╡рд╛ рдореЗрдВ рдПрдХ рдЖрд╕рд╛рди рд╕реБрдзрд╛рд░ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рддрд░реНрдХ рджреЗрддреЗ рд╣реИрдВ рдХрд┐ JSX рдХреЛ рдбрд╛рд░реНрдЯ рдХреА рдЬрдЧрд╣ рд▓реЗрдиреА рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдЬреНрдпрд╛рджрд╛ рдорд╛рдпрдиреЗ рдирд╣реАрдВ рд░рдЦрддрд╛ред

@zoechi

рдпрд╣ JSX рдЪрд░реНрдЪрд╛ рд╕реЗ рдХреИрд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ? рдЗрд╕реЗ рдПрдХ рдлрд╛рдпрджрд╛ рдХреИрд╕реЗ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?
рдЖрдк рдЖрдИрдУрдПрд╕ рдкрд░ рд╕реНрд╡рд┐рдлреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдСрдмреНрдЬреЗрдХреНрдЯрд┐рд╡-рд╕реА рдХрд╛ рдЙрддреНрддрд░рд╛рдзрд┐рдХрд╛рд░реА рд╣реИред
рдЖрдк рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ рдХреЛрдЯрд▓рд┐рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рдЬрд╛рд╡рд╛ рдореЗрдВ рдПрдХ рдЖрд╕рд╛рди рд╕реБрдзрд╛рд░ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рддрд░реНрдХ рджреЗрддреЗ рд╣реИрдВ рдХрд┐ JSX рдХреЛ рдбрд╛рд░реНрдЯ рдХреА рдЬрдЧрд╣ рд▓реЗрдиреА рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдЬреНрдпрд╛рджрд╛ рдорд╛рдпрдиреЗ рдирд╣реАрдВ рд░рдЦрддрд╛ред

рдЖрдкрдиреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдХрд╣рд╛ рдерд╛ (рдЬреЗрдПрд╕рдПрдХреНрд╕ рдореМрдЬреВрджрд╛ рддрд░реАрдХреЗ рд╕реЗ рдПрдХ рд╣рд▓реНрдХрд╛ рд╕реБрдзрд╛рд░ рд╣реИ) рд▓реЗрдХрд┐рди рдЧрд▓рдд рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдЖрдпрд╛ (рдбрд╛рд░реНрдЯ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЗрдПрд╕рдПрдХреНрд╕)ред

@cbazza рдпрд╣ рд╡рд╣реА рд╣реИ

рд╕рд╛рджрд╛ рдбрд╛рд░реНрдЯ рдкрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд▓рд╛рдн рдХреНрдпрд╛ рд╣реИ?

"рдЬреЗрдПрд╕рдПрдХреНрд╕ рдПрдХ рд╣рд▓реНрдХрд╛ рд╕реБрдзрд╛рд░ рд╣реИ" рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЖрд╢реНрд╡рд╕реНрдд рдирд╣реАрдВ рд╣реИ рдФрд░ рдпрд╣ рдХреЛрдИ рддрд░реНрдХ рдирд╣реАрдВ рд╣реИред
рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░рд╛рдп рд╣реИ (рдлрд┐рд░ рд╕реЗ) рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА рддрд░реНрдХ рдХреЗ рдмрд┐рдирд╛,
рдЙрдкрд░реЛрдХреНрдд рдЕрдиреНрдп рдкреНрд░реЛ-рдЬреЗрдПрд╕рдПрдХреНрд╕ рддрд░реНрдХреЛрдВ рдХреЗ рд╕рдорд╛рдиред

рдпрджрд┐ рдЖрдк рдЕрдЪреНрдЫреЗ рддрд░реНрдХ рджреЗрдиреЗ рдХреЗ рдЗрдЪреНрдЫреБрдХ рдирд╣реАрдВ рд╣реИрдВ рддреЛ рдЖрдк рдХрд┐рд╕реА рд╕реЗ рдЖрдкрдХреЗ рд╕реБрдЭрд╛рд╡реЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред

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

@zoechi 'рдЕрдЪреНрдЫреЗ' рддрд░реНрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЯреВрдЯреЗ рд╣реБрдП рд░рд┐рдХреЙрд░реНрдб рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ, рдкрд╣рд▓реЗ рдмрд╣реБрдд рдХреБрдЫ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдпрд╣ рдирд╣реАрдВ рдорд┐рд▓рд╛; рдЬреЛ рдареАрдХ рд╣реИ, 'рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛'ред

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

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВ, рдореЗрд░рд╛ рдХрд╛рдо рд▓рдЧрднрдЧ рддреИрдпрд╛рд░ рд╣реИ рдФрд░ рдореБрдЭреЗ рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдмрд╣реБрдд рдХрдо рд╕рдордп рд▓рдЧрд╛ рдХрд┐ рдореИрдВрдиреЗ рдХреЗрд╡рд▓ рд╕рдкреНрддрд╛рд╣рд╛рдВрдд рдореЗрдВ рд╣реА рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИред

рдлрд┐рд░ рд╕реЗ, DSX рдХреЗрд╡рд▓ рдПрдХ рд╣рд▓реНрдХрд╛ рд╕реБрдзрд╛рд░ рд╣реИ рдЬрд┐рд╕реЗ рд▓реЛрдЧ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдирд╣реАрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╡рд░реНрддрдорд╛рди рддрд░реАрдХреЗ рдХреЛ рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ, рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рдЕрдиреНрдп (рд░рд┐рдПрдХреНрдЯ рдбреЗрд╡рд▓рдкрд░реНрд╕) рддреБрд░рдВрдд рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдВрдЧреЗред

@cbazza

рдЦреВрдм рджрд┐рдП рдЧрдП

рдЬрд╝рд░реВрд░реА рдирд╣реАрдВред рдХреЗрд╡рд▓ рд╕рд╛рдорд╛рдиреНрдп рджрд╛рд╡реЗ рдЬреЛ рд╕рдЪ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдирд╣реАрдВред
рдХреЛрдИ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рд╡рд░рдг рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдЬреЛ рджреВрд╕рд░реЛрдВ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ред

рд╕рдЪ рдореЗрдВ рдирд╣реАрдВ, рдореЗрд░рд╛ рдХрд╛рдо рд▓рдЧрднрдЧ рддреИрдпрд╛рд░ рд╣реИ

рдорд╣рд╛рдиред рдлрд┐рд░ рдлрд╝реНрд▓рдЯрд░ рдЯреАрдо рдХреЛ рдХреБрдЫ рднреА рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реИ рдФрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ; рдкреА
рдХреНрдпрд╛ рдЗрд╕рдореЗрдВ рдлрд╝реНрд▓рдЯрд░ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╕рднреА IDE рдореЗрдВ рд╕рдорд░реНрдерди рд╕реНрд╡рддрдГ рдкреВрд░реНрдгрддрд╛ рдФрд░ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЬрд╛рдБрдЪ рд╢рд╛рдорд┐рд▓ рд╣реИ?

рдорд╣рд╛рдиред рдлрд┐рд░ рдлрд╝реНрд▓рдЯрд░ рдЯреАрдо рдХреЛ рдХреБрдЫ рднреА рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реИ рдФрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ; рдкреА

;)

рдХреНрдпрд╛ рдЗрд╕рдореЗрдВ рдлрд╝реНрд▓рдЯрд░ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╕рднреА IDE рдореЗрдВ рд╕рдорд░реНрдерди рд╕реНрд╡рддрдГ рдкреВрд░реНрдгрддрд╛ рдФрд░ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЬрд╛рдБрдЪ рд╢рд╛рдорд┐рд▓ рд╣реИ?

рдЕрдзрд┐рдХрд╛рдВрд╢ рдЖрдИрдбреАрдИ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХреНрд╕рдПрдордПрд▓ рдФрд░ рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЙрдирдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рдорд╛рдореВрд▓реА рдкрд░рд┐рд╡рд░реНрдзрди рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

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

рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдореЗрд░реЗ рд▓рд┐рдП рдЕрдЬреАрдм рд▓рдЧрддреА рд╣реИ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рд╕рд┐рд░реНрдл рдПрдХ рджрд┐рди рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХреЛрдб рд╣рд╛рдЗрд▓рд╛рдЗрдЯрд┐рдВрдЧ рд░рдВрдЧреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ред

https://blog.dantup.com/2014/08/you-have-ruined-html/

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

рдКрдкрд░ рджрд┐рдП рдЧрдП рд▓реЗрдЦ рдореЗрдВ рдпрд╣ рдЗрддрдирд╛ рдЧрд▓рдд рд╣реИ, JSX рдХреЗ рдмрд┐рдирд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореВрд▓ рд░реВрдк рд╕реЗ рди рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ рдФрд░ рд╕рднреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рд╢реАрд▓ рд╡реЗрдм рдврд╛рдВрдЪреЗ рдЕрдкрдиреЗ DSL рдкрд░ рдорд╛рд░реНрдХрдЕрдк рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рдорд┐рд╢реНрд░рдг рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред

рд╕рдордп рдЖ рдЧрдпрд╛ рд╣реИ...
рдпрд╣ рдмрд╣реБрдд рдЦреБрд╢реА рдХреА рдмрд╛рдд рд╣реИ рдХрд┐ рдореИрдВ рдСрдирд▓рд╛рдЗрди DSX рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдХреА рдШреЛрд╖рдгрд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ
https://spark-heroku-dsx.herokuapp.com/index.html

рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ cbazza рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫрд╛ рдХрд╛рдо
рдПрдХ рдмрд╛рдд рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ JSX рдХреЗ рд╕рд╛рде рдкрд╛рд▓рди рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХреНрд▓реЛрдЬрд┐рдВрдЧ рдЯреИрдЧред рдЬрд┐рд╕ рд╡рд┐рдЪрд╛рд░ рдХрд╛ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдерд╛:
рдЖрдЗрдбрд┐рдпрд╛: рдСрдЯреЛ рдЬреЗрдирд░реЗрдЯреЗрдб рдХреНрд▓реЛрдЬрд┐рдВрдЧ рдЯреИрдЧ

рдЖрдкрдХреЗ рдкрд╣рд▓реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╕реНрдкрдВрджрди рдХреЛрдб рджреЗрдЧрд╛ (рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдбрд╛рд░реНрдЯ рдореЗрдВ рд╡реИрдХрд▓реНрдкрд┐рдХ рдирдпрд╛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛):

Material(
  child: Column(
    children: <Widget>[
      MyAppBar(
        title: Text(
          'Example title',
          style: Theme.of(context).primaryTextTheme.title,
        )-Text,
      )-MyAppBar,
      Expanded(
        child: Center(
          child: Text(
            'Hello, world!',
          )-Text,
        )-Center,
      )-Expanded,
    ],
  )-Column,
)-Material;

@cbazza рдореИрдВ рд╕рдореБрджрд╛рдп рдФрд░ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рдХрд╛рдо рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ рдЬреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ UI рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдореБрдЭреЗ рдлрд╝реНрд▓рдЯрд░ рдореЗрдВ рдРрд╕рд╛ рдХреБрдЫ рднреА рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ :-((

рдлрд╝реНрд▓рдЯрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд╡рд╛рдЧрдВрддреБрдХ рдХреЗ рд░реВрдк рдореЗрдВ, рд▓реЗрдХрд┐рди рд░рд┐рдПрдХреНрдЯ рд╕реЗ рдмрд╣реБрдд рдкрд░рд┐рдЪрд┐рдд, рдХреБрдЫ рдЪреАрдЬреЗрдВ рдореЗрд░реЗ рд╕рд╛рдордиреЗ рдереАрдВ:

  • рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди рдореЙрдбрд▓ рдХрд╛рдлреА рд╣рдж рддрдХ рд╕рдорд╛рди рд╣реИ
  • рд╡рд┐рдЬреЗрдЯ/рдШрдЯрдХ рд╡рд░реНрдЪреБрдЕрд▓ рд░реЗрдВрдбрд░ рдЯреНрд░реА рдХрд╛рдлреА рд╣рдж рддрдХ рд╕рдорд╛рди рд╣реИ
  • рд░рд╛рдЬреНрдп рдФрд░ рдШрдЯрдХ рдореЙрдбрд▓ рдХреЛ рдЬрд╛рдирдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдХреБрдЫ рдбрд╛рд░реНрдЯ рд╡рд┐рдирд┐рд░реНрджреЗрд╢реЛрдВ рдФрд░ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдПрдкреАрдЖрдИ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рдЕрдм рдПрдХ рдРрдк рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реВрдВ, рд▓реЗрдХрд┐рди ...
  • рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рднрд╛рд╖рд╛ рдПрдХ рдареЛрдХрд░ рд╣реИред рдореИрдВ https://flutter.io/web-analogs/ рдХреА рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЪреАрдЬреЛрдВ рдХреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕реЗ рдЖрдпрд╛рдд рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (EdgeInset? Color?) рдпрд╛ рдЬрдм рдореБрдЭреЗ рдХреНрд▓рд╛рд╕ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреЗ рдмрдЬрд╛рдп рдкреНрд░рд╛рдЗрдореЗрдЯрд┐рд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
  • @cbazza рдХреЗ DSX рдХрдирд╡рд░реНрдЯрд░ рд╕реЗ CSS рдкрд╛рд░реНрд╕рд░ рдлрд╝реНрд▓рдЯрд░ рдореЙрдбрд▓ рдореЗрдВ рд▓реЗрдЖрдЙрдЯ рд╕рдордХрдХреНрд╖реЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрдкрдпреЛрдЧреА рд╣реИред

рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ:

  • рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд╕реНрдкрдВрджрди рдкреИрдЯрд░реНрди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдП JSX рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЗрд╕ рдереНрд░реЗрдб рдореЗрдВ рдХреБрдЫ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреНрд╡рд┐рдмрд▓реНрд╕ рдХреЛ рдХреБрдЫ рдирдП рд░рд┐рдПрдХреНрдЯ рдкреИрдЯрд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреИрд╕реЗ рдЙрдЪреНрдЪ-рдЖрджреЗрд╢-рдШрдЯрдХ (рдлрд╝рдВрдХреНрд╢рди рдЬреЛ рдШрдЯрдХ рд╡рд░реНрдЧ рдмрдирд╛рддреЗ рд╣реИрдВ) рдФрд░ рдкреНрд░реЛрдк рдкреНрд░рд╕реНрддреБрдд рдХрд░рддреЗ рд╣реИрдВ (рдШрдЯрдХ рдЬреЛ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реИрдВ; рдлрд╝рдВрдХреНрд╢рди рд░рд┐рдЯрд░реНрди рддрддреНрд╡)ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, "рдЪрд╛рдЗрд▓реНрдб рд╕реНрд▓реЙрдЯреНрд╕" рдирд╛рдо JSX рдореЗрдВ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЕрдиреБрд╡рд╛рдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ:
<Item
  right={() => new Text("Right")} {/* a named slot */}
  left={() => new Text("Left")}> {/* another named slot */}
  <ChildOne /> {/* generic children prop with 2 children */}
  <ChildTwo>
    <NestedChild />
  </ChildTwo>
</Item>
  • JSX рдХреЗ рдЦрд┐рд▓рд╛рдл рдореИрдВрдиреЗ рдЬреЛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реНрдХ рджреЗрдЦрд╛, рд╡рд╣ рдпрд╣ рдерд╛ рдХрд┐ рдбрд╛рд░реНрдЯ рдиреЗ рддрд░реНрдХреЛрдВ рдХреЛ рдирд╛рдо рджрд┐рдпрд╛ рд╣реИред
  • рдХрд┐рд╕реА рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЬрд╛рдирдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХреНрдпреЛрдВ рд╣реИ рдХрд┐ рдЙрд╕рдХреЗ рдХрдИ рдмрдЪреНрдЪреЗ рд╣реИрдВ рдпрд╛ рдПрдХ рдмрдЪреНрдЪрд╛? рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдПрдХ "рдЯреБрдХрдбрд╝рд╛" рдирд┐рд░реНрдорд╛рдг рдЙрд╕ рдПрдкреАрдЖрдИ рдХреЛ рдЕрд╕рдВрдмрджреНрдз рдХрд░ рд╕рдХреЗред

рдореБрдЭреЗ рдЕрднреА рднреА рд▓рдЧрддрд╛ рд╣реИ, рдПрдВрдЧреБрд▓рд░, рд░рд┐рдПрдХреНрдЯ, рдЖрджрд┐ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдЕрдиреБрднрд╡ рдХреЗ рд╕рд╛рде рд╕реНрдкрдВрджрди рдХреЗ рд▓рд┐рдП рдПрдХ рдирд╡рд╛рдЧрдВрддреБрдХ рдХреЗ рд░реВрдк рдореЗрдВ, рдирд┐рдпрдорд┐рдд рдбрд╛рд░реНрдЯ рддрд░реАрдХрд╛, рдФрд░ рдбрд╛рд░реНрдЯ 2.0 рдореЗрдВ рдЕрдзрд┐рдХ, рдЗрд╕ рдбреАрдПрд╕рдПрдХреНрд╕ рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИред рдпрд╣ рдХреБрдЫ рдПрдХреНрд╕рдПрдордПрд▓ рдФрд░ рд╕реАрдПрд╕рдПрд╕-рдИрд╢ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗ рдЬреНрдпрд╛рджрд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред тАНтЩВя╕П

@cbazza рдЖрдкрдХреЗ рджреВрд╕рд░реЗ рдбреЗрдореЛ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдбрд╛рд░реНрдЯ рдХреЗ 391 (рджреЛрдиреЛрдВ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЗ рдмрд┐рдирд╛) рдХреА рддреБрд▓рдирд╛ рдореЗрдВ 466 рд╡рд░реНрдг рд╣реИрдВред рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рдиреЗрддреНрд░рд╣реАрди рдлреВрд▓рд╛ рд╣реБрдЖ рджрд┐рдЦрддрд╛ рд╣реИред рдореБрдЭреЗ рдпрд╣ рд╢рдмреНрджрд╛рд░реНрде рд╕реАрдЦрдирд╛ рд╣реЛрдЧрд╛, рдЬреЛ рдореБрдЭреЗ рд╕рд╛рдорд╛рдиреНрдп рдбрд╛рд░реНрдЯ рдХреЛрдб рдХреЗ рд╕рд╛рде рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реИред рдФрд░ рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдЗрд╕рдХреЗ рд╕рд╛рде рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЬрди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдкреНрд░рддрд┐рдорд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ (рдпрджрд┐, рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рд▓рд┐рдП, рдЖрджрд┐)ред

рдЕрдЧрд░ рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд┐рдХрд▓реНрдк рд╣реЛрддрд╛, рддреЛ рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЙрдбрд▓ рдХреЗ рд╕рд╛рде рд░рд╣реВрдВрдЧрд╛ред

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

рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдлрд╝реНрд▓рдЯрд░ рдЯреАрдо рдХреЛ 1.0 рд░рд┐рд▓реАрдЬрд╝ рд╕реЗ рдкрд╣рд▓реЗ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рдирд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдЪрд┐рдд рд╣реИред рдЬрдмрдХрд┐ рдпреВрдЖрдИ рдмрдирд╛рдиреЗ рдХрд╛ рд╡рд░реНрддрдорд╛рди рддрд░реАрдХрд╛ рд╕рднреА рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ - рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ (рдФрд░ рдпрд╣ рдХреБрдЫ рд░рд╛рдп рдореЗрдВ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ)ред

рдЕрдЧрд░ рд▓реЛрдЧ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдм JSX рдЬреИрд╕рд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╕рдореБрджрд╛рдп рд╕рдВрдЪрд╛рд▓рд┐рдд рдкреНрд░рдпрд╛рд╕ рдЬрд╛рдиреЗ рдХрд╛ рд░рд╛рд╕реНрддрд╛ рд▓рдЧрддрд╛ рд╣реИред рдФрд░ рдпрд╣ рдорд╛рдорд▓рд╛ рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ (рдпрд╛ рдирд╣реАрдВ) рдЬрдм рдлрд╝реНрд▓рдЯрд░ рдЯреАрдо 1.0 рд░рд┐рд▓реАрдЬ рдХреЗ рдмрд╛рдж рдЗрд╕реЗ рдорд╛рдирддреА рд╣реИред

рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдореИрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддрд░реНрдХ рд╕реЗ рджреГрдврд╝рддрд╛ рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ: рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ JSX рд░рд┐рдПрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ (рдЬрд╣рд╛рдВ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдорд╛рд░реНрдХрдЕрдк рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ UI рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд░рд╣реЗ рд╣реИрдВ) рдХрд┐ рдпрд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдлрд╝реНрд▓рдЯрд░ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

@tehfailsafe

рдЕрдЪреНрдЫреА рдЦрдмрд░ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдлрд╝реНрд▓рдЯрд░ рдЯреАрдо рджреНрд╡рд╛рд░рд╛ рднреА рдЕрдкрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ (рдЬреЛ рдЗрд╕ рдзрд╛рдЧреЗ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ) рдХрд┐рд╕реА рдХреЛ рднреА рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИред рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рдХрд┐ рдпрд╣ рдЗрддрдирд╛ рднрд╛рд╡рдирд╛рддреНрдордХ рд░реВрдк рд╕реЗ рдЪрд╛рд░реНрдЬ рдХреНрдпреЛрдВ рд╣реИ рдХрд┐ рдХреБрдЫ рд▓реЛрдЧ рдРрд╕реЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рдХреЛрдб рд▓рд┐рдЦрдирд╛ рдкрд╕рдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЛ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ ...

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

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

рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗрдм рдХреЛ рдЙрд╕ рддрд░рд╣ рдХреЗ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ HTML рдЬреИрд╕реА рд╕реНрдерд┐рд░ рдорд╛рд░реНрдХрдЕрдк рднрд╛рд╖рд╛ рд╣реИ рдФрд░ рдЖрдк рдЗрд╕реЗ "рдЧрддрд┐рд╢реАрд▓" рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдПрдХ рдРрд╕реА рдкреНрд░рдгрд╛рд▓реА рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдХреЗ рдКрдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛред рдЖрдк рдЬрд┐рд╕ рдЪреАрдЬ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрдВрдЧреЗ рд╡рд╣ рдХреБрдЫ рдирд┐рд░реНрдорд╛рдг рд╣реИ рдЬреЛ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдордВрдЪ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рд╡рд╢ рд╣реИред
(рджреЗрдЦреЗрдВ: https://gbracha.blogspot.de/2014/09/a-domain-of-shadows.html)

рджреВрд╕рд░реА рдУрд░ рд╕реНрдкрдВрджрди рдХреА рдХреЛрдИ рдорд╛рд░реНрдХрдЕрдк рднрд╛рд╖рд╛ рдирд╣реАрдВ рд╣реИред рдореБрдЭреЗ рдЕрднреА рддрдХ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдХрдо рдЧрддрд┐рд╢реАрд▓ рдФрд░ рдХрдо рдЕрднрд┐рд╡реНрдпрдВрдЬрдХ рдЪреАрдЬрд╝реЛрдВ рдореЗрдВ рдирд┐рд╡реЗрд╢ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИред

рдореИрдВ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдЬреЛ рд▓реЛрдЧ рдЗрд╕рд╕реЗ рдЕрд╕рд╣рдордд рд╣реИрдВ, рдЙрдиреНрд╣реЛрдВрдиреЗ рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХреЗ рд╕рд╛рде рдФрд░ рдЙрд╕рдХреЗ рдмрд┐рдирд╛ рд░рд┐рдПрдХреНрдЯ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рд╣реИред рдореИрдВ рд╕рднреА рдХреЛ рдЗрд╕реЗ рдЖрдЬрдорд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЪрд░реНрдЪрд╛ рдХрдо рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд╣реЛрдЧреАред рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЙрдерд▓реЗ рд╕реАрдЦрдиреЗ рдХреА рдЕрд╡рд╕реНрдерд╛ рдХреЗ рдмрд╛рдж, рдпрд╣ рдмрд╣реБрдд рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ (рдФрд░ рдпрд╣ рд╕рднреА рд╡рд░реНрдгреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕рдорд╛рдкрди рдЯреИрдЧ рдЖрдкрдХреЛ рдЗрд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рдкрдврд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ)ред рдпрд╣ рдХреБрдЫ рдФрд░ рдирдпрд╛ рд╕реАрдЦрдиреЗ рд╕реЗ рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИ, рдЬреИрд╕реЗ рдлрд╝реНрд▓рдЯрд░, рдЬреЛ рд▓рдВрдмреЗ рд╕рдордп рдореЗрдВ рдЙрддреНрдкрд╛рджрдХрддрд╛ рдХреЛ рдмрдврд╝рд╛рддрд╛ рд╣реИред рдФрд░ рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рд╕рднреА рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реЛрдЧрд╛ред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдзреНрдпрд╛рди рд░рдЦрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдорди рдореЗрдВ рдПрдХ-рджреВрд╕рд░реЗ рдХреЗ рд╕рд░реНрд╡реЛрддреНрддрдо рд╣рд┐рдд рд╣реИрдВ - рдЬрд┐рд╕рд╕реЗ рд╕рд╛рдорд╛рди рдмрдирд╛рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдорджрдж рдХрд░реЗрдЧрд╛, рдФрд░ рдЕрдЧрд░ рдЗрд╕реЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рдорд░реНрдерди рдорд┐рд▓рд╛ рддреЛ рдЗрд╕реЗ рдЕрдкрдирд╛рдирд╛ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдзрдиреНрдпрд╡рд╛рдж @cbazza :)

@рдпреВрд░реА-рдХрдИ рдЧреБрдирд╛

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

рдкреНрд░рд╢реНрди рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ 'рдХреНрдпрд╛ JSX рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рд╕рд╣рд╛рдпрдХ рд╣реИ?' рд╕рд╡рд╛рд▓ рдпрд╣ рд╣реИ рдХрд┐ 'рдХреНрдпрд╛ JSX рдЬреИрд╕рд╛ рдХреБрдЫ рд╕реНрдкрдВрджрди рдХреЗ рд▓рд┐рдП рдорджрджрдЧрд╛рд░ рд╣реИ?'ред

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЙрддреНрддрд░ рдирд╣реАрдВ рд╣реИред

рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЕрдиреНрдп рдЪреАрдЬреЗрдВ рд╣реИрдВ:

  • рдРрдк рдХреЛрдб рд╕реЗ рд▓реЗрдЖрдЙрдЯ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рд╕реЗ рдХреЛрдб рдЕрдзрд┐рдХ рднрд╡рд┐рд╖реНрдп-рд╕рдмреВрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ; рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдпрд╣ рдбрд╛рд░реНрдЯ 2 рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкреНрд░рд╕реНрддрд╛рд╡ build рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ рдпрджрд┐ рд╡реЗ рдПрдХ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдкреНрд░рд╛рдЧреНрдорд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ JSX рдЬреИрд╕реЗ рдЕрдЬреНрдЮреЗрдп рдкреНрд░рд╛рд░реВрдк рд╕реЗ рдбрд╛рд░реНрдЯ рдХреЛрдб рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╣реЛ рдЧрдП рдереЗред
  • рд▓реЗрдЖрдЙрдЯ рдХреЛ рдорд╛рд░реНрдХрдЕрдк рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рд╕реЗ рд░реЗрдВрдбрд░ рдЗрдВрдЬрди рдХреЛ (рд╕реНрдЯреЗрдЯрдлреБрд▓/рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреНрдб) рд╡рд┐рдЬреЗрдЯ рдЗрдВрдЬрди рдЕрд▓рд╛ рд░рд┐рдПрдХреНрдЯ рдХреЗ рд░рд┐рдПрдХреНрдЯрдбреЙрдо рдФрд░ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдХреЗ рд╕рд╛рде рд╕рдВрдмрдВрдз рд╕реЗ рдЕрд▓рдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдирдП рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ рд╡рд┐рдЬреЗрдЯреНрд╕ рдХреЛ рдкреЛрд░реНрдЯ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
  • рдорд╛рд░реНрдХрдЕрдк рдкреНрд░рд╛рд░реВрдк рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рд╕реЗ рдореМрдЬреВрджрд╛ рд▓реЗрдЖрдЙрдЯ рдХреЛ рдлрд╝реНрд▓рдЯрд░ рдореЗрдВ рдкреЛрд░реНрдЯ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╕реНрдХреЗрдЪ рдпрд╛ рдЕрдиреНрдп рдбрд┐рдЬрд╝рд╛рдЗрди рдЯреВрд▓ рд╕реЗ

рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ cbazza рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫрд╛ рдХрд╛рдо

@ рд░реЙрдХрд╡реЛрд▓ , рдзрдиреНрдпрд╡рд╛рджред

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

@zoechi , рдзрдиреНрдпрд╡рд╛рджред рд╣рд╛рдБ, рдпрд╣ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рд╡рд┐рдХрд▓реНрдк рд╣реИ рдЬреЛ JSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВред рдЕрдЧрд░ рдпрд╣ рдЖрдкрдХреА рдмрд╛рдд рдирд╣реАрдВ рд╣реИ рддреЛ рдЕрдЪреНрдЫрд╛ рд╣реИ рдЬреИрд╕реЗ рдЖрдк рдХрд░ рд░рд╣реЗ рд╣реИрдВ рд╡реИрд╕реЗ рд╣реА рдХрд░рддреЗ рд░рд╣реЗрдВ, рд╡рд╣рд╛рдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИред

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд╕реНрдкрдВрджрди рдкреИрдЯрд░реНрди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдП JSX рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред

@alexkrolick , рд╣рд╛рдБ рдЖрдк рдирд╛рдорд┐рдд рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд▓рд┐рдП рд░реЗрдВрдбрд░ рдкреНрд░реЙрдкреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ рдЬреЛ рдЖрдк рд╕реНрдерд┐рддреАрдп рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдХреБрдВрдЬреА рдпрд╣ рдереА рдХрд┐ рдореИрдВ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдореЗрдВ рдХреБрдЫ рднреА рд╣рд╛рд░реНрдб рдХреЛрдб рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рддрд╛рдХрд┐ рдпрд╣ рд╣рд░ рдЪреАрдЬ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░реЗред

рдореБрдЭреЗ рдЕрднреА рднреА рд▓рдЧрддрд╛ рд╣реИ, рдПрдВрдЧреБрд▓рд░, рд░рд┐рдПрдХреНрдЯ, рдЖрджрд┐ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдЕрдиреБрднрд╡ рдХреЗ рд╕рд╛рде рд╕реНрдкрдВрджрди рдХреЗ рд▓рд┐рдП рдПрдХ рдирд╡рд╛рдЧрдВрддреБрдХ рдХреЗ рд░реВрдк рдореЗрдВ, рдирд┐рдпрдорд┐рдд рдбрд╛рд░реНрдЯ рддрд░реАрдХрд╛, рдФрд░ рдбрд╛рд░реНрдЯ 2.0 рдореЗрдВ рдЕрдзрд┐рдХ, рдЗрд╕ рдбреАрдПрд╕рдПрдХреНрд╕ рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИред рдпрд╣ рдХреБрдЫ рдПрдХреНрд╕рдПрдордПрд▓ рдФрд░ рд╕реАрдПрд╕рдПрд╕-рдИрд╢ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗ рдЬреНрдпрд╛рджрд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

@tenhobi , рдорд╣рд╛рди рдЙрдкрдпреЛрдЧ рддрдм, рдЬрд╛рд╣рд┐рд░ рд╣реИ DSX рд╕рднреА рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИред

рдЕрдЧрд░ рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд┐рдХрд▓реНрдк рд╣реЛрддрд╛, рддреЛ рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЙрдбрд▓ рдХреЗ рд╕рд╛рде рд╣реА рд░рд╣рддрд╛ред

@ рдмреА-рд╕реНрдЯреНрд░реЙрд╕, рдпрд╣ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИ рдЬреЛ рдЬреЗрдПрд╕рдПрдХреНрд╕ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВред

рдкреНрдпрд╛рд░ рдФрд░ рдирдлрд░рдд рд╣реИ, рд▓реЗрдХрд┐рди рдЬреНрдпрд╛рджрд╛рддрд░ рд░рд╛рдп рд╕рд╛рджреЗ рдбрд╛рд░реНрдЯ рдкрд░ рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХреА рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдкрд░ рднрд┐рдиреНрди рд╣реЛрддреА рд╣реИред

@lukaspili , DSX рдЙрди рд░рд┐рдПрдХреНрдЯрд┐рд╡ рдиреЗрдЯрд┐рд╡ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИ рдЬреЛ JSX рд╕реЗ рдкреНрдпрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рдЕрдЧрд░ рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдлрд╛рдпрджреЗ рдирд╣реАрдВ рджрд┐рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рди рдХрд░реЗрдВред рдпрд╣ рдбреАрдПрд╕рдПрдХреНрд╕ рдмрдирд╛рдо рд╕рд╛рджрд╛ рдбрд╛рд░реНрдЯ рдирд╣реАрдВ рд╣реИред рдпрд╣ DSX рдмрдирд╛рдо JSX рд╣реИ, рдЬрд┐рддрдиреЗ рдХрд░реАрдм 2 рдмреЗрд╣рддрд░ рд╣реИрдВред

рдЕрдЪреНрдЫреА рдЦрдмрд░ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдлрд╝реНрд▓рдЯрд░ рдЯреАрдо рджреНрд╡рд╛рд░рд╛ рднреА рдЕрдкрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ (рдЬреЛ рдЗрд╕ рдзрд╛рдЧреЗ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ) рдХрд┐рд╕реА рдХреЛ рднреА рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИред рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рдХрд┐ рдпрд╣ рдЗрддрдирд╛ рднрд╛рд╡рдирд╛рддреНрдордХ рд░реВрдк рд╕реЗ рдЪрд╛рд░реНрдЬ рдХреНрдпреЛрдВ рд╣реИ рдХрд┐ рдХреБрдЫ рд▓реЛрдЧ рдРрд╕реЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рдХреЛрдб рд▓рд┐рдЦрдирд╛ рдкрд╕рдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЛ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ ...

@tehfailsafe , рд╕реБрдирдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж !!! рдЖрдкрдиреЗ рд╕рд┐рд░ рдкрд░ рдХреАрд▓ рдареЛрдХ рджреА рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдЪреАрдЬ рдХрд╛ рдЗрддрдирд╛ рдмрдбрд╝рд╛ рдкреНрд░рддрд┐рд░реЛрдз рдХреНрдпреЛрдВ рд╣реИ рдЬреЛ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд▓реЛрдЧреЛрдВ рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЦреБрд╢ рдХрд░ рджреЗрдЧрд╛ред

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

@ рдмреА-рд╕реНрдЯреНрд░реЙрд╕, рдПрдХ рдмрд╛рд░ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдкреНрд░рд╢рдВрд╕рдХ рд╕реНрдкрдВрджрди рдореЗрдВ рдЪрд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВ рддреЛ рдЗрди рдЕрдиреНрдп рдЖрд╡рд╢реНрдпрдХ рдЪреАрдЬреЛрдВ рдкрд░ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рд▓реЛрдЧ рд╣реЛрдВрдЧреЗред рдкреНрд░рд╛рдердорд┐рдХрддрд╛ 1 рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╕реЗ рдорд╛рдЗрдВрдб рд╢реЗрдпрд░ рдЪреБрд░рд╛рдирд╛ рд╣реИ рдФрд░ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рд╕рдХреЗ рдЙрддрдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рдирд╛ рд╣реИред

рджреВрд╕рд░реА рдУрд░ рд╕реНрдкрдВрджрди рдХреА рдХреЛрдИ рдорд╛рд░реНрдХрдЕрдк рднрд╛рд╖рд╛ рдирд╣реАрдВ рд╣реИред рдореБрдЭреЗ рдЕрднреА рддрдХ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдХрдо рдЧрддрд┐рд╢реАрд▓ рдФрд░ рдХрдо рдЕрднрд┐рд╡реНрдпрдВрдЬрдХ рдЪреАрдЬрд╝реЛрдВ рдореЗрдВ рдирд┐рд╡реЗрд╢ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИред

@ рдмреА-рд╕реНрдЯреНрд░реЙрд╕, рдбреАрдПрд╕рдПрдХреНрд╕ рд╕рд╛рджреЗ рдбрд╛рд░реНрдЯ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ 'рдХрдо рдЧрддрд┐рд╢реАрд▓' рдФрд░ 'рдХрдо рдЕрднрд┐рд╡реНрдпрдВрдЬрдХ' рдХреИрд╕реЗ рд╣реИ? рдбреАрдПрд╕рдПрдХреНрд╕ рдбрд╛рд░реНрдЯ рд╣реИ рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХреАред

@ рдпреВрд░реА-рдХрдИ рдЧреБрдирд╛, рдзрдиреНрдпрд╡рд╛рджред

рдкреНрд░рд╢реНрди рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ 'рдХреНрдпрд╛ JSX рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рд╕рд╣рд╛рдпрдХ рд╣реИ?' рд╕рд╡рд╛рд▓ рдпрд╣ рд╣реИ рдХрд┐ 'рдХреНрдпрд╛ JSX рдЬреИрд╕рд╛ рдХреБрдЫ рд╕реНрдкрдВрджрди рдХреЗ рд▓рд┐рдП рдорджрджрдЧрд╛рд░ рд╣реИ?'ред

@ рдмреА-рд╕реНрдЯреНрд░реЙрд╕, рдмреЗрд╢рдХ рдпрд╣ рд╣реИред рдпрд╣ рд╡рд░реНрддрдорд╛рди рдлрд╝реНрд▓рдЯрд░ рджреЗрд╡реЛрдВ рдХреЗ рд▓рд┐рдП рдорджрджрдЧрд╛рд░ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдбрд┐рдЬрд╛рдЗрдирд░реЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдорджрджрдЧрд╛рд░ рд╣реИ рдЬреЛ рдЕрдкрдиреЗ рдЯреВрд▓ рд╕реЗ CSS рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдореЗрдВ рдирд┐рд╣рд┐рдд рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдорджрджрдЧрд╛рд░ рд╣реИред

@alexkrolick , рдмрд╣реБрдд рдЕрдЪреНрдЫреА рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВред

@cbazza

рдпрд╣ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИ рдЬреЛ JSX рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВред

рдореИрдВ рд╕рдордЭ рдЧрдпрд╛... рдпрд╣ рдореБрдЭреЗ рдЙрд╕ рддрд░рд╣ рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдХрд╣рд╛ рдерд╛, рдЗрд╕ рд╕рдордп рдРрд╕реА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рдЧрд╛рдпрдм рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдореБрдЭреЗ рд╕реНрдкрдВрджрди рдРрдк рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

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

рддреЛ рдЖрдк рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╕реНрдкрдВрджрди рдЯреАрдо рдХреЛ рдРрд╕реА рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рд░реЛрдХрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рд╕рдВрджрд┐рдЧреНрдз рд╣реИ рдФрд░ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдмрд╕реЗрдЯ рдХреЗ рдПрдХ рдЕрдВрд╢ рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░ рд╕рдХрддреА рд╣реИ рдпрд╛ рдирд╣реАрдВ рднреА рдХрд░ рд╕рдХрддреА рд╣реИ?

рд╕рд╛рджрд╛ рдбрд╛рд░реНрдЯ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ DSX 'рдХрдо рдЧрддрд┐рд╢реАрд▓' рдФрд░ 'рдХрдо рдЕрднрд┐рд╡реНрдпрдВрдЬрдХ' рдХреИрд╕реЗ рд╣реИ? рдбреАрдПрд╕рдПрдХреНрд╕ рдбрд╛рд░реНрдЯ рд╣реИ рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХреАред

рдкреНрд░рддреНрдпреЗрдХ рдбреАрдПрд╕рдПрд▓ рдкрд░рд┐рднрд╛рд╖рд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЬреАрдкреАрдПрд▓ рд╕реЗ рдХрдо рдЕрднрд┐рд╡реНрдпрдВрдЬрдХ рд╣реИред DSX рдХреЗ рд╕рд╛рде рдореИрдВ рдХрд┐рд╕реА рд╡рд┐рдЬреЗрдЯ рдХреЛ рд╕рд╢рд░реНрдд рд░реВрдк рд╕реЗ рдХреИрд╕реЗ рдЫрд┐рдкрд╛рдКрдВ? рдореИрдВ рдПрдХ рд╕рдВрдЧреНрд░рд╣ рдкрд░ рдкреБрдирд░рд╛рд╡реГрддрд┐ рдХреИрд╕реЗ рдХрд░реВрдВ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рддрддреНрд╡ рдХреЛ рдПрдХ рд╡рд┐рдЬреЗрдЯ рдореЗрдВ рдореИрдк рдХрд░реВрдВ? рдореИрдВ рдПрдХ рд╕реНрд╡рд┐рдЪ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реВрдВ? рдЕрдм рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдЬреАрдкреАрдПрд▓ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдФрд░ рдЕрд░реНрдерд╢рд╛рд╕реНрддреНрд░ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред рддреЛ рдбреАрдПрд╕рдПрд▓ рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдкрд╣рд▓реЗ рд╕реНрдерд╛рди рдкрд░ рдХреНрдпреЛрдВ рдХрд░реЗрдВ?

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

рд╡рд╣ рд╕рд╡рд╛рд▓ рдирд╣реАрдВ рдерд╛... DSL рдХрд┐рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░реЗрдЧрд╛ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рдЕрднреА рд╣рд▓ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдЖрдк рдХрд╣рддреЗ рд░рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдмреЗрд╣рддрд░ рд╣реИ, рдпрд╣ рдмреЗрд╣рддрд░ рдХреНрдпреЛрдВ рд╣реИ? рдореБрдЭреЗ рдЗрд╕рдореЗрдВ рдХреЛрдИ рд╕рдВрджреЗрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ DSX рдХреБрдЫ JSX рд▓реЛрдЧреЛрдВ рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░реЗрдЧрд╛ред рдореИрдВ рдЬрд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЪреАрдЬреЗрдВ рдкрд╕рдВрдж рдирд╣реАрдВ рдЖрддреАрдВред рдФрд░ рдкрд░рд┐рдЪрд┐рдд рд╣реА рдПрдХрдорд╛рддреНрд░ рддрд░реНрдХ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред рддреЛ рд╕реАрдПрд╕рдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рди рдХрд░реЗрдВ?
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░реЗрдВ? рдбрд╛рд░реНрдЯ рд╕реЗ рдЕрдзрд┐рдХ рд▓реЛрдЧ рдЗрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЬрд╛рдирддреЗ рд╣реИрдВред

рдпрджрд┐ рдЖрдк рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдиреЗ рдХреЗ рдПрдХрдорд╛рддреНрд░ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рдЪреАрдЬрд╝ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╡рд╛рдЪрд╛рд░ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

@ рдмреА-рд╕реНрдЯреНрд░реЙрд╕ рд╕реНрдкрд╖реНрдЯ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдЬреЗрдПрд╕рдПрдХреНрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдХреЗ рд▓рд┐рдП рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИ (рд░рд┐рдПрдХреНрдЯ рдХреЙрд▓ рдореЗрдВ createElement(ComponentClass) , рдбрд╛рд░реНрдЯ рдореЗрдВ рдпрд╣ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП)ред

<A property="a" />
new A(property: a)
<A property="a">
  <B />
  <C />
</A>
new A(property: a, children: <Widget>[new B(), new C()])

рдХреЗрд╡рд▓ рдирд┐рд░реНрдорд╛рдг рддрддреНрд╡ рдирд╛рдо + рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ + рддрд░реНрдХреЛрдВ, рдФрд░ рдмрдЪ рдирд┐рдХрд▓реЗ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ ( {...} ) рдХреЗ рдмреАрдЪ рдкрд░рд┐рд╡рд░реНрддрди рд╣реИрдВред

  • DSX рдХреЗ рд╕рд╛рде рдореИрдВ рдХрд┐рд╕реА рд╡рд┐рдЬреЗрдЯ рдХреЛ рд╕рд╢рд░реНрдд рд░реВрдк рд╕реЗ рдХреИрд╕реЗ рдЫрд┐рдкрд╛рдКрдВ?
(JS)
  { condition && <A /> }
  { condition ? <A /> : <B /> }
  • рдореИрдВ рдПрдХ рд╕рдВрдЧреНрд░рд╣ рдкрд░ рдкреБрдирд░рд╛рд╡реГрддрд┐ рдХреИрд╕реЗ рдХрд░реВрдВ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рддрддреНрд╡ рдХреЛ рдПрдХ рд╡рд┐рдЬреЗрдЯ рдореЗрдВ рдореИрдк рдХрд░реВрдВ?
(JS)
  { ['a', 'b'].map(i => <A property={i} />) }
  • рдореИрдВ рдПрдХ рд╕реНрд╡рд┐рдЪ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реВрдВ?
    рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдореИрдВ рдбрд╛рд░реНрдЯ рдореЗрдВ рдЬреЗрдПрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдЬрд╛рдирддрд╛ рд╣реВрдВ, рдЖрдк рдПрдХ рд╕реНрд╡рд┐рдЪ рдЗрдирд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рдЖрдк рд╡рд┐рдЬреЗрдЯ рдЯреНрд░реА рдХреЗ рдмрд╛рд╣рд░ рд╣реИрдВ рддреЛ рдЖрдк рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд╕реНрд╡рд┐рдЪ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рддреЛ рдЖрдк рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╕реНрдкрдВрджрди рдЯреАрдо рдХреЛ рдРрд╕реА рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рд░реЛрдХрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рд╕рдВрджрд┐рдЧреНрдз рд╣реИ рдФрд░ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдмрд╕реЗрдЯ рдХреЗ рдПрдХ рдЕрдВрд╢ рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░ рд╕рдХрддреА рд╣реИ рдпрд╛ рдирд╣реАрдВ рднреА рдХрд░ рд╕рдХрддреА рд╣реИ?

@ рдмреА-рд╕реНрдЯреНрд░реЙрд╕, рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╡реЗрдм рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдХреНрд░реЙрд╕ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдореЛрдмрд╛рдЗрд▓ рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рд╣реИ рдЬреЛ рд╕реНрдкрдВрджрди рдХрд╛ рдореБрдЦреНрдп рдкреНрд░рддрд┐рдпреЛрдЧреА рд╣реИ; рдФрд░ рд╣рд╛рдБ JSX рдПрдХ рдкреНрд░рдХрд╛рд╢ рд╕реНрд░реЛрдд рдХреА рддрд░рд╣ рд╣реИ, рдпрд╣ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рджреЗрд╡реЛрдВ рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░реЗрдЧрд╛ред рдореИрдВрдиреЗ рдЕрдЧрд╕реНрдд 2017 рдореЗрдВ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдерд╛, рдмрд╣реБрдд рдЕрдзрд┐рдХ рдмреЛрд▓рддреА рд╣реБрдИ рдмрд╣реБрдд рдХрдо рдХрд╛рд░реНрд░рд╡рд╛рдИред

рдкреНрд░рддреНрдпреЗрдХ рдбреАрдПрд╕рдПрд▓ рдкрд░рд┐рднрд╛рд╖рд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЬреАрдкреАрдПрд▓ рд╕реЗ рдХрдо рдЕрднрд┐рд╡реНрдпрдВрдЬрдХ рд╣реИред DSX рдХреЗ рд╕рд╛рде рдореИрдВ рдХрд┐рд╕реА рд╡рд┐рдЬреЗрдЯ рдХреЛ рд╕рд╢рд░реНрдд рд░реВрдк рд╕реЗ рдХреИрд╕реЗ рдЫрд┐рдкрд╛рдКрдВ? рдореИрдВ рдПрдХ рд╕рдВрдЧреНрд░рд╣ рдкрд░ рдкреБрдирд░рд╛рд╡реГрддрд┐ рдХреИрд╕реЗ рдХрд░реВрдВ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рддрддреНрд╡ рдХреЛ рдПрдХ рд╡рд┐рдЬреЗрдЯ рдореЗрдВ рдореИрдк рдХрд░реВрдВ? рдореИрдВ рдПрдХ рд╕реНрд╡рд┐рдЪ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реВрдВ? рдЕрдм рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдЬреАрдкреАрдПрд▓ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдФрд░ рдЕрд░реНрдерд╢рд╛рд╕реНрддреНрд░ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ред рддреЛ рдбреАрдПрд╕рдПрд▓ рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдкрд╣рд▓реЗ рд╕реНрдерд╛рди рдкрд░ рдХреНрдпреЛрдВ рдХрд░реЗрдВ?

рдЖрдк рдкреВрд░реА рддрд░рд╣ рдЧрд▓рдд рд╣реИрдВред рдЕрдЪреНрдЫреА рдЦрдмрд░ рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВ рднреА рдПрдХ рдмрд╛рд░ рдЧрд▓рдд рдерд╛ред рдЕрдзрд┐рдХрд╛рдВрд╢ (рд▓реЗрдХрд┐рди рд╕рднреА рдирд╣реАрдВ) рдбреАрдПрд╕рдПрд▓ рдорд╛рд░реНрдХрдЕрдк рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ (рдФрд░ рдпрд╣ рдмрд╣реБрдд рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдирд╣реАрдВ рд╣реИ), рдЬреЗрдПрд╕рдПрдХреНрд╕ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдореЗрдВ рдорд╛рд░реНрдХрдЕрдк рд▓рд╛рддрд╛ рд╣реИ (рд╣реЛрд╕реНрдЯ рднрд╛рд╖рд╛ рдХрд╛ рдкреВрд░рд╛ рдлрд╛рдпрджрд╛ рдЙрдард╛рддреЗ рд╣реБрдП)ред рдЕрдВрддрд░ рдкрд░рд┐рд╡рд░реНрддрдирдХрд╛рд░реА рд╣реИред рдЖрдкрдХреЗ рд╕рднреА рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдЙрддреНрддрд░ рдореВрд▓ рд░реВрдк рд╕реЗ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдЖрдк рдЗрд╕реЗ рдбрд╛рд░реНрдЯ рдореЗрдВ рдХрд░рддреЗ рд╣реИрдВ рдЙрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдбрд╛рд░реНрдЯ рд╣реИред рд╕реНрдкреНрд░реЗрдб рдСрдкрд░реЗрдЯрд░ рдХреЗ рдЕрдкрд╡рд╛рдж рдХреЗ рд╕рд╛рде '{}' рдХреЗ рдмреАрдЪ рдореЗрдВ рд╕рдм рдХреБрдЫ рдбрд╛рд░реНрдЯ рдХреЛрдб рд╣реИред рдпрд╣ рд╕рднреА рдбрд╛рд░реНрдЯ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рд╣реИрдВ рд▓реЗрдХрд┐рди рдЖрдк рдРрд╕реЗ рдЕрдирд╛рдо рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдПрдХ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рд▓реМрдЯрд╛рддреЗ рд╣реИрдВред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдореЗрдВ рдПрдХ рдЯреИрдЧ рджреЗрдЦрддреЗ рд╣реИрдВ (\) рд╡рд┐рдЬреЗрдЯ рдкрд░ рдмрд╕ рдПрдХ рдирдпрд╛ рд╣реИ (рдирдпрд╛ рдЯреЗрдХреНрд╕реНрдЯ ())ред

DSL рдХрд┐рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░реЗрдЧрд╛ рдЬрд┐рдирдХрд╛ рдЖрдк рдЕрднреА рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

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

рдЖрдк рдХрд╣рддреЗ рд░рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдмреЗрд╣рддрд░ рд╣реИ, рдпрд╣ рдмреЗрд╣рддрд░ рдХреНрдпреЛрдВ рд╣реИ?

рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдЕрдкрдиреЗ рдХрд╛рд░рдг рдмрддрд╛рдП рдФрд░ рдЙрдиреНрд╣реЗрдВ рдпрд╣рд╛рдВ рдирд╣реАрдВ рджреЛрд╣рд░рд╛рдКрдВрдЧрд╛ред JSX рдХреЗ рд▓реЛрдЧ рдореБрдЭрд╕реЗ рд╕рд╣рдордд рд╣реЛрдВрдЧреЗ рд▓реЗрдХрд┐рди 'рдЕрдкрдиреЗ-рдЕрдкрдиреЗ' рд╕реЗред

рдореБрдЭреЗ рдЗрд╕рдореЗрдВ рдХреЛрдИ рд╕рдВрджреЗрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ DSX рдХреБрдЫ JSX рд▓реЛрдЧреЛрдВ рдХреЛ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░реЗрдЧрд╛ред рдореИрдВ рдЬрд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЪреАрдЬреЗрдВ рдкрд╕рдВрдж рдирд╣реАрдВ рдЖрддреАрдВред рдФрд░ рдкрд░рд┐рдЪрд┐рдд рд╣реА рдПрдХрдорд╛рддреНрд░ рддрд░реНрдХ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред рддреЛ рд╕реАрдПрд╕рдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рди рдХрд░реЗрдВ?
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░реЗрдВ? рдбрд╛рд░реНрдЯ рд╕реЗ рдЕрдзрд┐рдХ рд▓реЛрдЧ рдЗрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЬрд╛рдирддреЗ рд╣реИрдВред

рд╣рд╛рдБ, CSS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдбрд┐рдЬрд╝рд╛рдЗрдирд░-рдбреЗрд╡рд▓рдкрд░ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред рдбреАрдПрд╕рдПрдХреНрд╕ рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░ рдбрд╛рд░реНрдЯ рдХрд╛ рд▓рд╛рдн рдирд┐рд╖реНрдкрд╛рджрди рдЧрддрд┐ (рдкреНрд░рджрд░реНрд╢рди) рд╣реИред

рдпрджрд┐ рдЖрдк рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдиреЗ рдХреЗ рдПрдХрдорд╛рддреНрд░ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рдЪреАрдЬрд╝ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╡рд╛рдЪрд╛рд░ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдЖрдк рдЧрд▓рдд рдкреВрд░реНрд╡рд╛рдЧреНрд░рд╣реЛрдВ рд╕реЗ рдЗрддрдиреЗ рднрд░реЗ рд╣реБрдП рд╣реИрдВ рдХрд┐ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреА рдкреВрд░реА рдХреНрд╖рдорддрд╛ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рд╕реЗ рд░реЛрдХ рд░рд╣реЗ рд╣реИрдВред рдЕрдкрдирд╛ рджрд┐рдорд╛рдЧ рдЦреЛрд▓реЛ, рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЪреАрдЬреЛрдВ рдХреЛ рдЖрдЬрдорд╛рдУред

@alexkrolick , рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

@cbazza

рдЖрдк рдЧрд▓рдд рдкреВрд░реНрд╡рд╛рдЧреНрд░рд╣реЛрдВ рд╕реЗ рдЗрддрдиреЗ рднрд░реЗ рд╣реБрдП рд╣реИрдВ рдХрд┐ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреА рдкреВрд░реА рдХреНрд╖рдорддрд╛ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рд╕реЗ рд░реЛрдХ рд░рд╣реЗ рд╣реИрдВред рдЕрдкрдирд╛ рджрд┐рдорд╛рдЧ рдЦреЛрд▓реЛ, рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЪреАрдЬреЛрдВ рдХреЛ рдЖрдЬрдорд╛рдУред

рдореИрдВ рдЕрдм рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рд╕рджрд╕реНрдпрддрд╛ рд╕рдорд╛рдкреНрдд рдХрд░реВрдВрдЧрд╛ред рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдпрд╣рд╛рдВ рдпрд╛ рдХрд╣реАрдВ рднреА рдлрд┐рд░ рдХрднреА рдЙрд▓реНрд▓реЗрдЦ рди рдХрд░реЗрдВ, thxред

@ рдмреА-рд╕реНрдЯреНрд░реЙрд╕

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

@cbazza рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдПрдХ рдИрдореЗрд▓ рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ? [email protected]

рдпрд╣ рдкреНрд░рд╕реНрддрд╛рд╡ рдкреБрд░рд╛рдиреЗ рд╕реВрддреНрд░ рдореЗрдВ рдкрд╣рд▓реЗ рд╣реА рдмрдирд╛ рджрд┐рдпрд╛ рдерд╛ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЕрдм рднреА рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБ рд╣реИ

рдЖрдИрдПрдордПрдЪрдУ рдиреЗ new/const рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рд╣рдЯрд╛рдХрд░ рдкрд╣рд▓реЗ рд╣реА рдмрд╣реБрдд рдорджрдж рдХреА рд╣реИред рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдбрд╛рд░реНрдЯ рдкреНрд░рд╛рд░реВрдк рдкреЗрдбрд╝реЛрдВ рдХреЛ рдкреНрд░рд╛рд░реВрдкрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЙрд╕рдореЗрдВ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрдард┐рдирд╛рдЗрдпрд╛рдБ рд╣реЛрддреА рд╣реИрдВред рдпрд╣ рдкреЗрдбрд╝ рд╕рдВрд░рдЪрдирд╛ IMHO рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдкрд░реНрдпрд╛рдкреНрдд рдЬреЛрд░ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ:

    return Scaffold(
      appBar: AppBar(title: Text("WeatherDemo")),
      resizeToAvoidBottomPadding: false,
      body: 
        Column(children: <Widget>
        [
          Padding(
            padding: const EdgeInsets.all(16.0),
            child: 
            TextField(
                    key: AppKeys.textField,
                    autocorrect: false,
                    controller: _controller,
                    decoration: InputDecoration(hintText: "Filter cities",),
                    style:  TextStyle(fontSize: 20.0,),
                    onChanged: ModelProvider.of(context).textChangedCommand,
                    ),
          ),

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

рдкреНрд░рднреБ рд╣рдо рд╕рдмрдХреА рдорджрдж рдХрд░реЗрдВред

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

@naiveaiguy "рд╡реЗ" рдЙрдирдХреЗ DSX рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
рдпрджрд┐ рдлрд╝реНрд▓рдЯрд░ рдЯреАрдо рдЗрд╕реЗ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рддреА рд╣реИ, рддреЛ рдпрд╣ рдПрдХ рдУрдкрди рд╕реЛрд░реНрд╕ рдкрд╣рд▓ рд╣реЛ рд╕рдХрддреА рд╣реИред
рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╢реБрджреНрдз-рдбрд╛рд░реНрдЯ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЕрдм рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред
рджреЛрдиреЛрдВ рджреБрдирд┐рдпрд╛ рд╕рд╣-рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред

рдореИрдВ @zoechi рд╕реЗ рдЗрддрдирд╛ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рд╡реЗ рд╕рд╣-рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рд░рд╣ рд╕рдХрддреЗ рд╣реИрдВ ... рдмрд╕ рдЗрддрдирд╛ рд╣реА рдФрд░ рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рдпрд╣ рдкреБрд░рд╛рдиреЗ рдзрд╛рдЧреЗ рдкрд░ рддрдп рд╣реЛ рдЧрдпрд╛ рд╣реИ

@lrhn

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

рдмреНрд░рд╛рд╡реЛ, рдмрд┐рд▓реНрдХреБрд▓ рдпрд╣реАред

рд░рд┐рдПрдХреНрдЯ рдореЗрдВ рдЖрдк рдЗрд╕реЗ 4 рддрд░реАрдХреЗ рд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдФрд░ рдореБрдЭреЗ рдЖрдЬ рд╣реА рдЕрдиреНрдп 2 рддрд░реАрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рдЪрд▓рд╛ !!!)

(1) рдЖрдк JSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЬреЛ рдореБрдЭреЗ рдкрд╕рдВрдж рд╣реИ)
https://reactjs.org/docs/introducing-jsx.html

(2) рдЖрдк рдореВрд▓ рддрд░реАрдХреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЬреЛ рд╕реНрдкрдВрджрди рдХреЗ рд╕рдорд╛рди рд╣реИ)
https://reactjs.org/docs/react-without-jsx.html

рдКрдкрд░ рджрд┐рдП рдЧрдП рд▓рд┐рдВрдХ рдХреЗ рдЕрдВрдд рдореЗрдВ рд╡реЗ 2 рдЖрд╢рд╛рдЬрдирдХ рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХрд╛ рднреА рдЙрд▓реНрд▓реЗрдЦ рдХрд░рддреЗ рд╣реИрдВ

(3) React.js рдорд╛рд░реНрдХрдЕрдк рдХреЗ рд▓рд┐рдП рд╣рд╛рдЗрдкрд░рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕
https://github.com/mlmorg/react-hyperscript

(4) рд╣рд╛рдЗрдкрд░рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ред
https://github.com/ohanhi/hyperscript-helpers

рд╡рд┐рдХрд▓реНрдк рд╣реЛрдирд╛ рдЕрдЪреНрдЫреА рдмрд╛рдд рд╣реИ, рд╡реЗ рджрд┐рди рдЧрдП рдЬрдм рдЖрдк рдХрд┐рд╕реА рднреА рд░рдВрдЧ рдореЗрдВ рдлреЛрд░реНрдб рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рдереЗ рдЬрдм рддрдХ рдХрд┐ рдпрд╣ рдХрд╛рд▓рд╛ рд╣реЛ :)

@naiveaiguy рдпрджрд┐ рд╡рд░реНрддрдорд╛рди рджреГрд╖реНрдЯрд┐рдХреЛрдг рдФрд░ DSX рд╣реИ рддреЛ рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рдПрдХ рдореБрджреНрджрд╛ рдХреНрдпреЛрдВ рд╣реИ?
(рдпрд╣реА рд╡рд╣ рд╣реИ рдЬреЛ рдореИрдВ рдЖрдкрдХреЗ рдбрд╛рдЙрдирд╡реЛрдЯ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реВрдВ)

@naiveaiguy "рд╡реЗ" рдЙрдирдХреЗ DSX рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
рдпрджрд┐ рдлрд╝реНрд▓рдЯрд░ рдЯреАрдо рдЗрд╕реЗ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рддреА рд╣реИ, рддреЛ рдпрд╣ рдПрдХ рдУрдкрди рд╕реЛрд░реНрд╕ рдкрд╣рд▓ рд╣реЛ рд╕рдХрддреА рд╣реИред
рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╢реБрджреНрдз-рдбрд╛рд░реНрдЯ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЕрдм рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред
рджреЛрдиреЛрдВ рджреБрдирд┐рдпрд╛ рд╕рд╣-рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред

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

рд╡рд┐рдХрд▓реНрдк рд╣реЛрдирд╛ рдЕрдЪреНрдЫреА рдмрд╛рдд рд╣реИ, рд╡реЗ рджрд┐рди рдЧрдП рдЬрдм рдЖрдк рдХрд┐рд╕реА рднреА рд░рдВрдЧ рдореЗрдВ рдлреЛрд░реНрдб рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рдереЗ
рдЬрдм рддрдХ рдпрд╣ рдХрд╛рд▓рд╛ рд╣реИ рддрдм рддрдХ рдкрд╕рдВрдж рдЖрдпрд╛ :)

рд╕рдЪ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рд╕рднреА рд╕рд╣рдордд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рдХрд┐ рдбрд╛рд░реНрдЯ/рд╕реНрдкрдВрджрди рдПрдХ рдФрд░ рдЬреЗрдПрд╕/рд╡реЗрдм рдлреНрд░рдВрдЯрдПрдВрдб рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдмрди рдЬрд╛рдПред рд╕реНрдкрдВрджрди рдЕрднреА рднреА рдмреАрдЯрд╛ рд╕реЗ рдмрд╛рд╣рд░ рдирд╣реАрдВ рд╣реИ рдФрд░ рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕рдореЗрдВ рдХреБрдЫ рд╡реНрдпрдХреНрддрд┐рдкрд░рдХ рдХреЗ рд▓рд┐рдП 2 рдорд╛рдирдХ рд╣реЛрдВред

рд░рд┐рдПрдХреНрдЯ рдореЗрдВ рдЖрдк рдЗрд╕реЗ 4 рддрд░реАрдХреЗ рд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдФрд░ рдореБрдЭреЗ рдЖрдЬ рд╣реА рдЕрдиреНрдп 2 рддрд░реАрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рдЪрд▓рд╛ !!!)

рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдореБрджрд╛рдп рд╕рдВрдЪрд╛рд▓рд┐рдд рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд░рд┐рдПрдХреНрдЯ рдЙрдиреНрд╣реЗрдВ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИред рдмреАрдЪ рдореЗрдВ рдЕрдЪреНрдЫрд╛ред рдЕрдм, рдЙрдирдореЗрдВ рд╕реЗ рдХреЗрд╡рд▓ 2 рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддреМрд░ рдкрд░ рд╕рдорд░реНрдерд┐рдд рд╣реИрдВ: React.createElement рдФрд░ JSX рддрд░реАрдХрд╛, рдЬреЛ рджреВрд╕рд░реЗ рдХреЗ рдКрдкрд░ рдПрдХ рдЖрд╡рд░рдг рд╣реИред JSX рдХрд╛ рдореВрд▓реНрдп рдЙрд╕ рд╕рдВрджрд░реНрдн рдореЗрдВ рдХреБрдЦреНрдпрд╛рдд рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣рд╛рдБ рдпрд╣ рдЗрддрдирд╛ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИред рдЗрд╕ рдмрд╛рдд рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП, рдХреНрдпрд╛ рд╣рдо рдХреЗрд╡рд▓ рдПрдХ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдорд╛рдирдХ рдФрд░ DSX рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдбреЙрдХреНрд╕ рдЬрдм рднреА рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реЛрдВ, рдХреЛ рдмреАрдЪ рдореЗрдВ рд╣реА рдкреВрд░рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдлрд╝реНрд▓рдЯрд░ рдЯреАрдо рдХреЛ рдЙрди рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреА рдХрдореА рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдРрдк рдмрдирд╛рдиреЗ рд╕реЗ рд░реЛрдХрддреА рд╣реИрдВред рдореИрдВ рдЕрдкрдиреЗ рдкреНрд░рдмрдВрдзрдХреЛрдВ рдХреЛ рдлрд╝реНрд▓рдЯрд░ рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдпрджрд┐ рд╣рдо рдорд╛рдирдЪрд┐рддреНрд░ рд╕рдорд░реНрдерди рднреА рдирд╣реАрдВ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреИрдорд░рд╛ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдореЗрдВ 2 рд╕рдкреНрддрд╛рд╣ рд▓рдЧрддреЗ рд╣реИрдВред

рдзреНрдпрд╛рди рд░рдЦреЗрдВ, рдореИрдВ DSX рдкрд░ рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП рджрд░рд╡рд╛рдЬрд╝рд╛ рдмрдВрдж рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ UI рдмрд┐рд▓реНрдбрд┐рдВрдЧ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдмрди рдЬрд╛рдП рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рдпрд╣ рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдореБрджрд╛рдп рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

@zoechi рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ рджреЛ рд╡рд┐рдЪрд╛рд░ рд╕реНрдкрдВрджрди рдХреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╕рд╣-рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ - рд╣рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рдкреНрд░рдХреГрддрд┐ рдХреЗ рд╡рд┐рднрд╛рдЬрди рдХреЛ рдЗрддрдиреА рдЬрд▓реНрджреА рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП - рд▓реЗрдХрд┐рди рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдпрд╣ рдПрдХрдорд╛рддреНрд░ рд╕рдордЭреМрддрд╛ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред

@naiveaiguy

рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ рджреЛ рд╡рд┐рдЪрд╛рд░ рд╕реНрдкрдВрджрди рдХреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╕рд╣-рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ - рд╣рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рдкреНрд░рдХреГрддрд┐ рдХреЗ рд╡рд┐рднрд╛рдЬрди рдХреЛ рдЗрддрдиреА рдЬрд▓реНрджреА рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП

рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╡реЗ рд╕рд╣-рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд░рд╣ рд╕рдХрддреЗ рд╣реИрдВ? (рдЗрд╕ рддрдереНрдп рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ DSX рд╕рд┐рд░реНрдл рд╡рд╛рдХреНрдпрд╛рддреНрдордХ рдЪреАрдиреА рд╣реИ, рдпрд╛ рдЬреИрд╕рд╛ рдХрд┐ @emalamela рдХрд╣рддреЗ рд╣реИрдВ, "рд╡рд░реНрддрдорд╛рди рддрд░реАрдХреЗ рдХрд╛ рд╕рд┐рд░реНрдл рдПрдХ рдЖрд╡рд░рдг")ред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдмрд┐рд▓реНрдХреБрд▓ рдПрдХ рд╣реА рдЪреАрдЬрд╝ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдЬрд▓реНрджрдмрд╛рдЬреА рдХреНрдпреЛрдВ рд╣реИ? рдореИрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдкреВрдЫ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдЗрд╕рдореЗрдВ рджреЗрд░реА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ, рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдХреНрдпрд╛ рдЕрд▓рдЧ рд╣реЛрдЧрд╛ рдЬреЛ рдЕрднреА рдирд╣реАрдВ рд╣реИ?

@emalamela

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рд╕рднреА рд╕рд╣рдордд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рдХрд┐ рдбрд╛рд░реНрдЯ/рд╕реНрдкрдВрджрди рдПрдХ рдФрд░ рдЬреЗрдПрд╕/рд╡реЗрдм рдлреНрд░рдВрдЯрдПрдВрдб рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдмрди рдЬрд╛рдПред

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

рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдЬреЛ рдореБрдЭреЗ рдлрд╝реНрд▓рдЯрд░ рдХреЛ рдЖрдЬрд╝рдорд╛рдиреЗ рд╕реЗ рд░реЛрдХ рд░рд╣реА рд╣реИ, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЛрдВрдиреЗ JSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪреБрдирд╛ред
рдШрдЯрдХ рдкрджрд╛рдиреБрдХреНрд░рдо рдХреЛ рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП IMHO JSX рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИ

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

рдореИрдВ рдкрд┐рдЫрд▓реЗ 2.5 рд╡рд░реНрд╖реЛрдВ рд╕реЗ рд░рд┐рдПрдХреНрдЯ / рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЬрдм рдпреВрдЖрдИ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреА рдмрд╛рдд рдЖрддреА рд╣реИ рддреЛ JSX рд╕рд┐рдВрдЯреИрдХреНрд╕ рдСрдлрд╝рд░ рдХреЗ рдЙрддреНрдкрд╛рджрдХрддрд╛ рд▓рд╛рдн рдХрд╛ рддреНрдпрд╛рдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рдХреБрдЫ рд╣реИред рдореИрдВ рдлрд╝реНрд▓рдЯрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдм рдХреБрдЫ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рдмрд┐рддрд╛рдиреЗ рдкрд░ рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рд╡рд┐рдЪрд╛рд░ рдХрд░реВрдВрдЧрд╛ рдФрд░ рдЕрдзреНрдпрдпрди рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рд▓рд╛рдпрдХ рд╣реИ рдЬрдм рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рд╕рдорд░реНрдерд┐рдд рд╣реИред

рдореИрдВ рдХрд▓реНрдкрдирд╛ рднреА рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдХрд┐ рд╕рдВрднрд╛рд╡рд┐рдд рдЧреЛрдж рд▓реЗрдиреЗ рд╡рд╛рд▓реЛрдВ/рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ/рджреЗрд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЗрд╕ рд╡рдЬрд╣ рд╕реЗ рдЦреЛ рд░рд╣реА рд╣реИ, рдЕрдЧрд▓реЗ рдорд╣реАрдиреЛрдВ рдореЗрдВ рдлрд┐рд░ рд╕реЗ рдЖрдирд╛ рд╣реЛрдЧрд╛ред

рдореИрдВ рдХрд▓реНрдкрдирд╛ рднреА рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдХрд┐ рд╕рдВрднрд╛рд╡рд┐рдд рдЧреЛрдж рд▓реЗрдиреЗ рд╡рд╛рд▓реЛрдВ/рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ/рджреЗрд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдЗрд╕ рд╡рдЬрд╣ рд╕реЗ рдЦреЛ рд░рд╣реА рд╣реИ, рдЕрдЧрд▓реЗ рдорд╣реАрдиреЛрдВ рдореЗрдВ рдлрд┐рд░ рд╕реЗ рдЖрдирд╛ рд╣реЛрдЧрд╛ред

рд╣рд╛рдБ, 44 Mio рдХреЛ рдЕрдкрд╡реЛрдЯ рдХрд░рдирд╛ рдФрд░ рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд▓рдЧрд╛ :D

рд╣рд╛рдБ, 44 рдХреЛ рдЕрдкрд╡реЛрдЯ рдХрд░рдирд╛ рдФрд░ рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд▓рдЧрд╛ :D

рдЬрдм 'рдЕрдкрд╡реЛрдЯ' рджреНрд╡рд╛рд░рд╛ рдХреНрд░рдордмрджреНрдз рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЕрдиреБрд░реЛрдз 3131 рдЦреЛрд▓реЗ рдЧрдП рдЯрд┐рдХрдЯреЛрдВ рдХреА рд╕реВрдЪреА рдореЗрдВ 7 рд╡реЗрдВ рд╕реНрдерд╛рди рдкрд░ рд╣реИред

https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+sort%3Areactions-%2B1-desc

@cbazza рдореИрдВ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рдЦрд┐рд▓рд╛рдл рдмрд╣рд╕ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛, рд▓реЗрдХрд┐рди "рдпрджрд┐ рдЖрдк x рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдмрд╣реБрдд рд╣реА y рд╣реЛрдЧрд╛" рдЬреИрд╕реА рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдХреЗрд╡рд▓ рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж рд╣реИрдВред

рдореИрдВ рдкрд┐рдЫрд▓реЗ 2.5 рд╡рд░реНрд╖реЛрдВ рд╕реЗ рд░рд┐рдПрдХреНрдЯ / рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЬрдм рдпреВрдЖрдИ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреА рдмрд╛рдд рдЖрддреА рд╣реИ рддреЛ JSX рд╕рд┐рдВрдЯреИрдХреНрд╕ рдСрдлрд╝рд░ рдХреЗ рдЙрддреНрдкрд╛рджрдХрддрд╛ рд▓рд╛рдн рдХрд╛ рддреНрдпрд╛рдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рдХреБрдЫ рд╣реИред рдореИрдВ рдлрд╝реНрд▓рдЯрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдм рдХреБрдЫ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рдмрд┐рддрд╛рдиреЗ рдкрд░ рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рд╡рд┐рдЪрд╛рд░ рдХрд░реВрдВрдЧрд╛ рдФрд░ рдЕрдзреНрдпрдпрди рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рд▓рд╛рдпрдХ рд╣реИ рдЬрдм рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рд╕рдорд░реНрдерд┐рдд рд╣реИред

@sonye

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

рдЬрдм 'рдЕрдкрд╡реЛрдЯ' рджреНрд╡рд╛рд░рд╛ рдХреНрд░рдордмрджреНрдз рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЕрдиреБрд░реЛрдз 3131 рдЦреЛрд▓реЗ рдЧрдП рдЯрд┐рдХрдЯреЛрдВ рдХреА рд╕реВрдЪреА рдореЗрдВ 7 рд╡реЗрдВ рд╕реНрдерд╛рди рдкрд░ рд╣реИред

@cbazza

рдпрд╣ рд╕рдмрд╕реЗ рдбрд╛рдЙрдирд╡реЛрдЯ рднреА рд╣реИред рдпрд╣ рдХрд╛рдлреА рд╡рд┐рд╡рд╛рджрд╛рд╕реНрдкрдж рд╣реИред

@emalamela ,

рдпрд╣ рд╕рдмрд╕реЗ рдбрд╛рдЙрдирд╡реЛрдЯ рднреА рд╣реИред рдпрд╣ рдХрд╛рдлреА рд╡рд┐рд╡рд╛рджрд╛рд╕реНрдкрдж рд╣реИред

рдЪреВрдВрдХрд┐ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЕрдиреБрд░реЛрдз рд╡рд░реНрддрдорд╛рди рддрд░реАрдХреЗ рдХрд╛ рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИ рдФрд░ рдпрд╣ рд╡рд░реНрддрдорд╛рди рддрд░реАрдХреЗ рдХреЛ рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЛрдИ рд╡рд┐рд╡рд╛рдж рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП; рдпрджрд┐ рдЖрдкрдХреЛ JSX/DSX рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдЬрд╛рд░реА рд░рдЦреЗрдВ рдЬреИрд╕рд╛ рдЖрдк рдЖрдЬ рдХрд░рддреЗ рд╣реИрдВред

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

new Card(
  child: Column(
    crossAxisAlignment: CrossAxisAlignment.start,
    children: <Widget>[
      AspectRatio(
        aspectRatio: 18 / 11,
        child: Image.asset('assets/diamond.png'),
      ),
      new Padding(
        padding: EdgeInsets.fromLTRB(16, 12, 16, 8),
        child: Column(
          crossAxisAlignment: CrossAxisAlignment.start,
          children: <Widget>[
            Text('Title'),
            SizedBox(height: 8),
            Text('Secondary Text'),
          ],
        ),
      ),
    ],
  ),
)

рдмрди рдЬрд╛рддрд╛ рд╣реИ:

<Card>
  <Column crossAxisAlignment={CrossAxisAlignment.start}>
    <AspectRatio aspectRatio={18 / 11}>
      <Image src={asset('assets/diamond.png')} />
    </AspectRatio>

    <Padding padding={EdgeInsets.fromLTRB(16, 12, 16, 8)}>
      <Column crossAxisAlignment={CrossAxisAlignment.start}>
        <Text>Title</Text>
        <SizedBox height={8} />
        <Text>Secondary Text</Text>
      </Column>
    </Padding>
  </Column>
</Card>

@emalamela JSX рдХреЗ рд▓рд┐рдП рдФрд░ рдЙрд╕рдХреЗ рдЦрд┐рд▓рд╛рдл рддрд░реНрдХ рдЪрд░реНрдЪрд╛ рд╕реЗ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рд╛рдордЧреНрд░реА рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВ рдХреЗрд╡рд▓ рдЕрдкрдиреА рдирд┐рдЬреА рд░рд╛рдп рд╕рд╛рдЭрд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдХреЛрдб рдкрдардиреАрдпрддрд╛ред рдореИрдВ рддреБрд░рдВрдд JSX рдореЗрдВ UI рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕реНрдкрд╖реНрдЯ рд╕реНрдкрд╖реНрдЯ рд╡рд┐рдЪрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ (рд╕реЗрдХрдВрдб рд▓реЗрддрд╛ рд╣реИ), рдорд╛рдирд╕рд┐рдХ рдореЛрдбрд▓ рдмрд╣реБрдд рд╣реА рджреГрд╢реНрдп рд╣реИред рджреВрд╕рд░рд╛, рдкреНрд░рдпреЛрдЬреНрдпред рдореИрдВ рддрд░реНрдХ рджреВрдВрдЧрд╛ рдХрд┐ рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдЬреЗрдПрд╕/рдбрд╛рд░реНрдЯ рдпрд╛ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдПрдкреАрдЖрдИ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рднреА рдЬрд╛рдиреЗ рдмрд┐рдирд╛ рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдХрд┐рд╕реА рдРрд╕реЗ рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЙрдкрдпреБрдХреНрдд рд╣реИ рдЬреЛ рд╕рд┐рд░реНрдл рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╕реАрдЦ рд░рд╣рд╛ рд╣реИ, рдпрд╛ рдХрд┐рд╕реА рдРрд╕реЗ рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдЬреЛ рдореЗрд░реА рдЯреАрдо рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рдбрд┐рдЬрд╛рдЗрдирд░ рдЕрдм UI рдХреЛ рдХреЛрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

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

рдпрд╣ рдХреЛрдб рдХреА рдХрдо рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рдпрд╣ "рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЪреАрдиреА" рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдордиреБрд╖реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдг рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИред рдореИрдВ рдЗрд╕ рддрд░реНрдХ рдХреЗ рднреА рдЦрд┐рд▓рд╛рдл рд╣реВрдВ рдХрд┐ рд╕рднреА рдХреЛ JSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрд╣ рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж рд╣реИред рдЖрдк рдЙрд╕ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЛ рдХрдо рднреНрд░рдо рдХреЗ рд╕рд╛рде рдЕрдкрдирд╛ рдХрд╛рдо рддреЗрдЬреА рд╕реЗ рдХрд░рдиреЗ рджреЗрддрд╛ рд╣реИ, рдХрдИ (рд╕реНрд╡рдпрдВ рд╕рд╣рд┐рдд) рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ JSX (рдпрд╛ рд╕реНрдкрдВрджрди рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ DSX) рд╣реЛрдЧрд╛, рдмрд╕ред

рдореИрдВ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реЗ рдЖ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдкрд╣рд▓реА рдмрд╛рд░ рд╕реНрдкрдВрджрди рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЬреАрдм рд╣реИ рдХрд┐ рд╕реНрдкрдВрджрди рдЯреАрдо рдореЗрдВ JSX рд╕рд┐рдВрдЯреИрдХреНрд╕ рдирд╣реАрдВ рд╣реИ, рдореЗрд░рд╛ рдорддрд▓рдм рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рд╣реИ! JS рдХреА рджреБрдирд┐рдпрд╛ рдореЗрдВ, JSX рдЖрдЬрдХрд▓ рд╣рд░ рд░рд┐рдПрдХреНрдЯ-рд╡рд┐рдХрд▓реНрдк рдореЗрдВ рдмреЗрд╣рдж рдкреНрд░рдЪрд▓рд┐рдд рд╣реИ! JSX рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рд╕реБрдкрд░ рдлреНрд░реЗрдВрдбрд▓реА рд╣реИред рдХреГрдкрдпрд╛ рдЗрд╕ ASAP рдХреЛ рд▓рд╛рдЧреВ рдХрд░реЗрдВ, рддрд╛рдХрд┐ рдЖрдк рд╕рдореБрджрд╛рдп рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХреЗрдВред

рдЖрдк рдЗрд╕ рдореБрджреНрджреЗ рдореЗрдВ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреА рдорд╛рддреНрд░рд╛ рдХреА рддрд▓рд╛рд╢ рдХрд░рдХреЗ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ JSX (рдпрд╛ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ DSX) рдПрдХ рдмрдбрд╝реА рдмрд╛рдд рд╣реИред

JSX рдПрдХ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рддрдм рддрдХ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдЬрдм рддрдХ рдЖрдк рдЗрд╕реЗ рдЖрдЬрдорд╛рддреЗ рдирд╣реАрдВ рд╣реИрдВред рдЖрдкрдХреЗ рдХреЛрдб рдореЗрдВ рдкрд╣рд▓реЗ рдорд╛рд░реНрдХрдЕрдк рд╣реЛрдирд╛ рдЕрдЬреАрдм рд╣реИ рд▓реЗрдХрд┐рди рдлрд┐рд░ рдпрд╣ рдХрдорд╛рд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

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

рдФрд░, рдЬреИрд╕рд╛ рдХрд┐ @eseidelGoogle (https://youtu.be/h7HOt3Jb1Ts?t=2m41s) рдиреЗ рджреВрд╕рд░реЗ рд╡реНрдпрдХреНрддрд┐ рд╕реЗ рдХрд╣рд╛, "рд╕реНрдкрдВрджрди рдЖрдИрдУрдПрд╕ рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб рдХреЛ рдПрдХ рд╣реА рдХреЛрдбрдмреЗрд╕ рдореЗрдВ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИред рд╣рдо рдЗрд╕реЗ рддреЗрдЬ рдФрд░ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ [. ..] рдлрд╝реНрд▓рдЯрд░ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рддрдХ рд╕рднреА рддрд░рд╣ рд╕реЗ рдмрд╛рдд рдХрд░рддрд╛ рд╣реИ [...] рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕реНрддрд░рд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдк рдЬрд┐рддрдирд╛ рдЪрд╛рд╣реЗрдВ рдЙрддрдирд╛ рдХрдо рдпрд╛ рдЬреНрдпрд╛рджрд╛ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВред [...] рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЯреВрд▓рд┐рдВрдЧ рдореЗрдВ рдирд┐рд╡реЗрд╢ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд╣реИ ред"

рдХреГрдкрдпрд╛ JSX рдХреЛ рд▓рд╛рдЧреВ рдХрд░реЗрдВред

рдореИрдВ рдбрд╛рд░реНрдЯ рдХрд╛ рдкреНрд░рд╢рдВрд╕рдХ рд╣реВрдВ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд╛ рднрд╛рд░реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рднреА рд╣реВрдВред рдореБрдЭреЗ рд╣рдореЗрд╢рд╛ рдбрд╛рд░реНрдЯ рдЯреЗрд░рд╕рд░ рдФрд░ рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд░рдЦрд░рдЦрд╛рд╡ рдпреЛрдЧреНрдп рд▓рдЧрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ JSX/DSX рдПрдХ рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рддрд░реАрдХреЗ рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

@rajaraodv рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рдХрд┐ рд╕реНрдкрдВрджрди рдХреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рд╢реАрд▓ рд╢реИрд▓реА рдврд╛рдВрдЪреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рдЪрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл ReactJS рдХрд╛ рд╕реНрд╡рд╛рдж рд╣реИред
рдЕрдзрд┐рдХрд╛рдВрд╢ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рд╕реЗ рдореБрдЭреЗ рдпрд╣ рдЖрднрд╛рд╕ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдпрд╣ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рдкрд░реЗрд╢рд╛рдиреА рд╣реЛрддреА рд╣реИ рдХрд┐ рдХреБрдЫ рдирдпрд╛ рд╡реИрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдЬреИрд╕рд╛ рд╡реЗ рдкрд╣рд▓реЗ рд╕реЗ рдЬрд╛рдирддреЗ рд╣реИрдВред

рдЖрдк рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП рд╕реНрдкрдВрджрди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреИрд╕рд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рдЙрдЪрд┐рдд рддрд░реНрдХ рдкреНрд░рджрд╛рди рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХреЛ рдХреНрдпреЛрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ JSX/DSX рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛, рдлрд┐рд░ "рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡рд░реАрдпрддрд╛ рдХреЗ рдХрд╛рд░рдг" рдпрд╛ "рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдмреЗрд╣рддрд░ рд╣реИ" рдХреЗ рдмрдЬрд╛рдп рдПрдХ рддрдереНрдпрд╛рддреНрдордХ рддрд░реАрдХреЗ рд╕реЗ рд╕рд╛рджрд╛ рдбрд╛рд░реНрдЯред .

@zoechi , рдЖрдк рдХреБрдЫ рдпрд╛рдж рдХрд░ рд░рд╣реЗ рд╣реИрдВ: рд╕реНрдкрдВрджрди рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реЗ рдкреНрд░реЗрд░рд┐рдд рдерд╛, Flutter doc рдХреЗ рдЕрдиреБрд╕рд╛рд░ред
рд╢рд╛рдпрдж рдпрд╣ рд╕рд┐рд░реНрдл рдореЗрд░рд╛ рдореБрджреНрджрд╛ рд╣реИред рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ UI рдХреЛрдб рдХреЛ рдкрдврд╝рдиреЗ рдореЗрдВ рдХрдард┐рди рд╕рдордп рд╣реИ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдпрд╣ рдбрд╛рд░реНрдЯ 2 рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЗрдВ рднреА рд╣реИред

рд╕реНрдкрдВрджрди рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╕реЗ рдкреНрд░реЗрд░рд┐рдд рдерд╛

рдореИрдВ рдирд╣реАрдВ рджреЗрдЦрддрд╛ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╣рддрд╛ рд╣реИ "рднрд╛рд╖рд╛ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рд╕рдм рдХреБрдЫ рд╡рд╣реА рд╣реИ рдЬрд┐рд╕реЗ рдЬреЗрдПрд╕ рдХреЗ рдмрдЬрд╛рдп рд╕реНрдкрдВрджрди рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ"ред

рдореБрдЭреЗ рд╕рдЪ рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ UI рдХреЛрдб рдкрдврд╝рдиреЗ рдореЗрдВ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рд░рд╣реА рд╣реИ

рдФрд░ рдЖрдк рджрд╛рд╡рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕рдХрд╛ рдПрдХрдорд╛рддреНрд░ рдХрд▓реНрдкрдиреАрдп рд╕рдорд╛рдзрд╛рди DSX рд╣реИ?

рдХреНрдпрд╛ рдЖрдкрдиреЗ рдорд╛рдирд╛ рд╣реИ рдХрд┐ рд╕реНрдкрдВрджрди 1.0 рднреА рдирд╣реАрдВ рд╣реИ рдФрд░ рд╕рдордп рдХреЗ рд╕рд╛рде рдЖрдИрдбреАрдИ рд╕рдорд░реНрдерди рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?

рдХреЛрдб рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рддреНрд╡рд░рд┐рдд рд╕реБрдзрд╛рд░ ("рд░реИрдк xxx") рдФрд░ рдХреНрд▓реЛрдЬрд┐рдВрдЧ рд▓реЗрдмрд▓ рдЬреИрд╕реЗ рдмреЗрд╣рддрд░ рдлрд╝реНрд▓рдЯрд░ рдЖрдИрдбреАрдИ рд╕рдорд░реНрдерди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдХреЗрд╡рд▓ рдкрд╣рд▓реЗ рдЫреЛрдЯреЗ рдХрджрдо рдЙрдард╛рдП рдЧрдП рдереЗред

рдбреЗрд╡рд▓рдкрд░ рдХреЗ рдЕрдиреБрднрд╡ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреА рдЕрд╕реАрдорд┐рдд рд╕рдВрднрд╛рд╡рдирд╛рдПрдВ рд╣реИрдВ рдФрд░ рдЗрд╕ рдЪрд░реНрдЪрд╛ рдореЗрдВ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ
"рд╕реНрдкрдВрджрди рдЕрднреА рддрдХ рд╕рд╣реА рдирд╣реАрдВ рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ DSX рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ"
рдЖрдорддреМрд░ рдкрд░ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдареЛрд╕ рддрд░реНрдХ рдХреЗ рдмрд┐рдирд╛ рдХрд┐ DSX рдХреИрд╕реЗ рдпрд╛ рдХреНрдпреЛрдВ рдЗрд╕реЗ рд╣рд▓ рдХрд░реЗрдЧрд╛ рдпрд╛ рд╕реБрдзрд╛рд░реЗрдЧрд╛ред

@рдЬрд╝реЛрдЗрдЪреА ,

рдЖрдк рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП рд╕реНрдкрдВрджрди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреИрд╕рд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рдЙрдЪрд┐рдд рддрд░реНрдХ рдкреНрд░рджрд╛рди рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХреЛ рдХреНрдпреЛрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ JSX/DSX рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛, рдлрд┐рд░ "рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡рд░реАрдпрддрд╛ рдХреЗ рдХрд╛рд░рдг" рдпрд╛ "рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдмреЗрд╣рддрд░ рд╣реИ" рдХреЗ рдмрдЬрд╛рдп рдПрдХ рддрдереНрдпрд╛рддреНрдордХ рддрд░реАрдХреЗ рд╕реЗ рд╕рд╛рджрд╛ рдбрд╛рд░реНрдЯред .

рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдкреНрд▓реЗрди рдбрд╛рд░реНрдЯ рдпрд╛ рдбреАрдПрд╕рдПрдХреНрд╕ рдХреЗрд╡рд▓ рд╢реИрд▓реА рдХреА рдмрд╛рдд рд╣реИ, рдЗрд╕ рдкрд░ рдмрд╣рд╕ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреМрди рд╕рд╛ рдмреЗрд╣рддрд░ рд╣реИред рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрд╕рдВрдж рд╣реИ рдФрд░ рд▓реЛрдЧреЛрдВ рдХреЗ рдкрд╛рд╕ рдПрдХ рдпрд╛ рджреВрд╕рд░реЗ рдХреЛ рдЪреБрдирдиреЗ рдХреЗ рдЕрдкрдиреЗ рдХрд╛рд░рдг рд╣реИрдВред

рд░рд┐рдПрдХреНрдЯ рд╡рд░реНрд▓реНрдб рдореЗрдВ рдЬреЛ рд╣реБрдЖ рд╣реИ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдПрдХ рдмрд╛рд░ рдЬрдм рдЖрдк JSX рдХреЗ рд╕рд╛рде рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╡рд╛рдкрд╕ рдирд╣реАрдВ рдЬрд╛рддреЗред рдЬреИрд╕рд╛ рдХрд┐ рдЕрдиреНрдп рдиреЗ рдКрдкрд░ рдХрд╣рд╛ рд╣реИ, рдЖрдк рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж JSX рд╕реЗ рдЬреБрдбрд╝ рдЬрд╛рддреЗ рд╣реИрдВред JSX рдХреЛ рд░рд┐рдПрдХреНрдЯ рд╡рд░реНрд▓реНрдб (рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ, Vue) рдХреЗ рдмрд╛рд╣рд░ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рджреНрд╡рд╛рд░рд╛ рдЕрдкрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдпрд╣ рд╕реНрдкрдВрджрди рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЙрдкрдпреБрдХреНрдд рд╣реИред

рдФрд░ рдЖрдк рджрд╛рд╡рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕рдХрд╛ рдПрдХрдорд╛рддреНрд░ рдХрд▓реНрдкрдиреАрдп рд╕рдорд╛рдзрд╛рди DSX рд╣реИ?

рдбрд╛рд░реНрдЯ рдЯреВрд▓реНрд╕ (рдХрдВрдкрд╛рдЗрд▓рд░, рдПрдирд╛рд▓рд╛рдЗрдЬрд╝рд░, рдЖрдИрдбреАрдИ, рдЖрджрд┐) рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рд╕реЛрд░реНрд╕ рдореИрдк рд╕рдкреЛрд░реНрдЯ рдХреЗ рд╕рд╛рде рд╕рдореБрджрд╛рдп рдХреЛ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░реА-рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХреНрд╖рдорддрд╛рдУрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдбреАрдПрд╕рдПрдХреНрд╕ рдпрд╛ рдХреБрдЫ рднреА рдмреЗрд╣рддрд░ рд╕рдореБрджрд╛рдп рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ рдФрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдлрд╝реНрд▓рдЯрд░ (рдбреАрдмрдЧрд░, рдСрдЯреЛ-) рдореЗрдВ рдПрдХреАрдХреГрдд рд╣реЛ рд╕рдХреЗред рдкреВрд░реНрдг, рдЖрджрд┐)ред

рдбреЗрд╡рд▓рдкрд░ рдХреЗ рдЕрдиреБрднрд╡ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреА рдЕрд╕реАрдорд┐рдд рд╕рдВрднрд╛рд╡рдирд╛рдПрдВ рд╣реИрдВ рдФрд░ рдЗрд╕ рдЪрд░реНрдЪрд╛ рдореЗрдВ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ
"рд╕реНрдкрдВрджрди рдЕрднреА рддрдХ рд╕рд╣реА рдирд╣реАрдВ рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ DSX рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ"
рдЖрдорддреМрд░ рдкрд░ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдареЛрд╕ рддрд░реНрдХ рдХреЗ рдмрд┐рдирд╛ рдХрд┐ DSX рдХреИрд╕реЗ рдпрд╛ рдХреНрдпреЛрдВ рдЗрд╕реЗ рд╣рд▓ рдХрд░реЗрдЧрд╛ рдпрд╛ рд╕реБрдзрд╛рд░реЗрдЧрд╛ред

рдЬрд╝рд░реВрд░, рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдЯрд┐рдХрдЯ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп 'рдбреЗрд╡рд▓рдкрд░ рдЕрдиреБрднрд╡ рдореЗрдВ рд╕реБрдзрд╛рд░' рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдмрд╣реБрдд рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИ рдФрд░ рдпрд╣ рд╕реНрдкрдВрджрди рдореЗрдВ JSX рд╕рдорд░реНрдерди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИред рд╕рдореБрджрд╛рдп рдбреАрдПрд╕рдПрдХреНрд╕ рдХреЛ рд╕рд╛рджреЗ рдбрд╛рд░реНрдЯ рдорд╛рд░реНрдЧ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд╛рд╣рддрд╛ рд╣реИред

рдореИрдВ рдЦреБрдж рдХреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдирд╣реАрдВ рджреЗрдЦ рд╕рдХрддрд╛ (рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реВрдБ)ред рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдПрдХ рдЪрд╛рдВрджреА рдХреА рдЧреЛрд▓реА рд╣реИ, рд▓реЗрдХрд┐рди рдЗрддрдирд╛ рдЙрддреНрд╕рд╛рд╣ рд╣реИ рдХрд┐ рдпрд╣ рдХрд░рдиреЗ рд▓рд╛рдпрдХ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ Google рдХреЛ рднрд╛рд╖рд╛ рдХреА рдмрд╛рдзрд╛рдУрдВ рдХреЛ рджреВрд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рд╕рдореБрджрд╛рдп рдХреЛ рд╡рд╣ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдорд┐рд▓ рд╕рдХреЗ рдЬреЛ рд╡реЗ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдореБрдЭреЗ Google рдХреА рдлрд╝реНрд▓рдЯрд░/рдбрд╛рд░реНрдЯ рдЯреАрдореЛрдВ рдХреЗ рдмрд╛рд╣рд░ рдХрд┐рд╕реА рдХреЛ рдбрд╛рд░реНрдЯ/рдлрд╝реНрд▓рдЯрд░ рдХреЗ рд▓рд┐рдП JSX рдЬреИрд╕реА рдЪреАрдЬрд╝ рд▓рд┐рдЦрдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рд╡рд╛рд▓реА рдХрд┐рд╕реА рднреА рдмрд╛рдзрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рдирд╣реАрдВ рд╣реИред рдЕрдЧрд░ рдХреЛрдИ рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ рддреЛ рдореБрдЭреЗ рдЙрди рдкрд░ рдмрдЧ рджреЗрдЦрдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ред (рдпрд╣ рднреА рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рдЙрдкрд░реЛрдХреНрдд рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдпрд╛рдж рдХрд┐рдпрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдЗрд╕ рдмрд╣реБрдд рд▓рдВрдмреЗ рдмрдЧ рдХреЗ рд╣рд░ рд╢рдмреНрдж рдХреЛ рдирд╣реАрдВ рдкрдврд╝рд╛ рд╣реИред) :)

рдзрдиреНрдпрд╡рд╛рдж! рдРрд╕рд╛ рдЙрддреНрд╕рд╛рд╣ рджреЗрдЦрдХрд░ рдЦреБрд╢реА рд╣реБрдИ!

@seidelGoogle ,

Intellij рдФрд░/рдпрд╛ VS рдХреЛрдб (рдбрд╛рд░реНрдЯ-рдХреЛрдб рдХреЗ рд╕рд╛рде) рдХреИрд╕реЗ рдПрдХ .dsx рдлрд╝рд╛рдЗрд▓ рд╕реЗ рдмреНрд░реЗрдХрдкреНрд╡рд╛рдЗрдВрдЯ рдФрд░ рдЪрд░рдг рджрд░ рдХреЛрдб рд╕реЗрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗ? (рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдбрд╛рд░реНрдЯ рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рд╣реИ)ред .dsx рдлрд╝рд╛рдЗрд▓ (рдЬреИрд╕реЗ .dart рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде) рд╕реЗ рд╕реНрд╡рддрдГ рдкреВрд░реНрдг рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреИрд╕реЗ?

рдЖрдкрдиреЗ рдЯреВрд▓реАрдВрдЧ рдкрд░ рдмрд╣реБрдд рдирд┐рд╡реЗрд╢ рдХрд┐рдпрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЯреВрд▓реАрдВрдЧ рдПрдХ рдирдИ рднрд╛рд╖рд╛ (рдЬреИрд╕реЗ DSX) рдХреЗ рдкреНрд░реА-рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ (рд╕реЛрд░реНрд╕ рдореИрдкреНрд╕ рдХреЗ рд╕рд╛рде) рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдХрд┐ рдбрд╛рд░реНрдЯ/рдлрд╝реНрд▓рдЯрд░ рдореЗрдВ рдирд┐рд░реНрдмрд╛рдз рд░реВрдк рд╕реЗ рдЯреНрд░рд╛рдВрд╕рдкрд╛рдЗрд▓ рд╣реЛрддрд╛ рд╣реИред

рдПрдХ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдЙрдкрд▓рдмреНрдз рд╣реИ рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ:
https://spark-heroku-dsx.herokuapp.com/index.html

PS рдпрд╣ рдЯрд┐рдХрдЯ рдХреЗрд╡рд▓ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХрд╛ рдЖрдзрд╛ рд╣реИ !!!
https://github.com/flutter/flutter/issues/15922

@cbazza рдЙрд╕ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЗ рд╕рд╛рде рдХрд╣реАрдВ рд░реЗрдкреЛ рд╣реИ? рдХреЛрдб рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдФрд░ рдЙрд╕ рдкрд░ рд╣реИрдХрд┐рдВрдЧ рдореЗрдВ рд╕рдореБрджрд╛рдп рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рднрд▓реЗ рд╣реА рд╡рд╣ рд╕рд╣реА рди рд╣реЛред

@jonahwilliams , рдирд╣реАрдВ DSX рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдХреЛрдб рдЬрд╛рд░реА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЙрд╕рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЬрд▓реНрджреА рд╣реИред
рдЖрдк рдкреВрд░реНрд╡-рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреНрд╖рдорддрд╛рдУрдВ рдЬреИрд╕реЗ рдмреНрд░реЗрдХрдкреНрд╡рд╛рдЗрдВрдЯ, рд╕реНрдЯреЗрдкрд┐рдВрдЧ, рдСрдЯреЛ-рдкреВрд░реНрдг, рдЖрджрд┐ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╕ 2 рд╣рд╛рде рд╕реЗ рд▓рд┐рдЦреА рд╕рдордХрдХреНрд╖ рдлрд╛рдЗрд▓реЛрдВ (.dsx рдФрд░ .dart) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдПрдХ рдмрд╛рд░ рдЬрдм рдЙрдкрдХрд░рдг рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕реНрд░реЛрдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдкреВрд░реНрд╡-рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдЗрд╕реЗ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдореЗрдВ рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ рдЕрдирдмреНрд▓реЙрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВред рдпрд╣ рджреВрд╕рд░реЛрдВ рдХреЛ рднреА рдЕрдкрдиреЗ рджрд┐рд▓ рдХреА рдЗрдЪреНрдЫрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдХрд░реЗрдЧрд╛ред

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

рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рдХреНрдпрд╛ рд╣реИ, рдореБрдЭреЗ рдХрд┐рд╕реА рднреА рднрд╛рд╖рд╛ рдпрд╛ рдЯреВрд▓рдХрд┐рдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рдЬреЛ рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдкреНрд░реА-рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рд╣реБрдХ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ - рд╢рд╛рдпрдж рдЗрд╕рд▓рд┐рдП рдХрд┐ рдпрд╣ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ, рднрд╛рд╖рд╛ рдФрд░ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХреЛрдиреЗ рдХреЗ рдорд╛рдорд▓реЗ рдФрд░ рдзрд╛рд░рдгрд╛рдПрдВ рд╣реИрдВред

рдпрджрд┐ рдЖрдкрдиреЗ рд╕реНрд░реЛрдд рдорд╛рдирдЪрд┐рддреНрд░ (https://pub.dartlang.org/packages/source_maps) рдЙрддреНрдкрдиреНрди рдХрд┐рдП рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдИрдбреАрдИ рдореЗрдВ рдХрдо рд╕реЗ рдХрдо рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рд╕рдорд░реНрдерди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдмрд╣реБрдд рдЫреЛрдЯрд╛ рд╣реИ, рдбрд╛рд░реНрдЯ/рдлреНрд▓рдЯрд░ рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд╣реИред рд▓реЗрдХрд┐рди рдлрд┐рд░, рдпрд╣ рд╕рдм рдЕрдиреБрдорд╛рди рд╣реИ рдмрд┐рдирд╛ рдпрд╣ рдЬрд╛рдиреЗ рдХрд┐ рдЖрдкрдХрд╛ рдЯреВрд▓рд┐рдВрдЧ рдХреНрдпрд╛ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЖрдк рдЗрд╕реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░реЗрдВрдЧреЗред

@matanlurey , рд╕реНрд░реЛрдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреВрд░реНрд╡-рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рддрдВрддреНрд░ рд╣реИ рдЬреЛ рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╣реИ рдЬреЛ рднрд╡рд┐рд╖реНрдп рдХреА рдХрд┐рд╕реА рднреА рдХрд▓реНрдкрдирд╛рд╢реАрд▓ рднрд╛рд╖рд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред рдХреНрд░реЛрдо рдмреНрд░рд╛рдЙрдЬрд╝рд░/рдбреАрдмрдЧрд░ рдЗрд╕реЗ рдХрд╛рдлреА рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдореИрдВ рдЬреЗрдПрд╕ рдХреЛ рдЯреНрд░рд╛рдВрд╕рдкрд╛рдЗрд▓ рдХрд░рдиреЗ рд╡рд╛рд▓реА рдХрд┐рд╕реА рднреА рднрд╛рд╖рд╛ рдХреЛ рдбреАрдмрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЖрдк рд╕реНрд░реЛрдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА рд╕рд░рд▓ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдХреЗ рд╕рд╛рде рдЖ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рддреБрдЪреНрдЫ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рд▓рд┐рдЦреЗрдВ рдЬреЛ рдореВрд▓ рдлрд╝рд╛рдЗрд▓ рдкрд░ рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рдХреЗ рдмреАрдЪ рдПрдХ рд░рд┐рдХреНрдд рд░реЗрдЦрд╛ рдХреЗ рд╕рд╛рде рдбрд╛рд░реНрдЯ/рд╕реНрдкрдВрджрди рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИред (.d2 => .dart, .d2 рдбрд╛рд░реНрдЯ/рдлрд╝реНрд▓рдЯрд░ рдлрд╝рд╛рдЗрд▓ рд╣реИ, рдмрд╛рд╣рд░ .dart рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдореВрд▓ рдлрд╝рд╛рдЗрд▓ рдХреА рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рдХреЗ рдмреАрдЪ рдПрдХ рд░рд┐рдХреНрдд рд░реЗрдЦрд╛ рд╣реЛрдЧреА)ред

рд╣рд╛рдВ, рдореИрдВ рдЯреЗрд╕реНрдЯрдлрд╛рдЗрд▓ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдорд╛рдирдЪрд┐рддреНрд░ рдмрдирд╛рдиреЗ рдкрд░ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

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

рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдЬреЗрдПрд╕рдПрдХреНрд╕ рд╕рд┐рдВрдЯреЗрдХреНрд╕ рдХреЗ рдПрдореА рдкреНрд░рд╕реНрддрд╛рд╡рдХ рд╕рд┐рд░реНрдл рд╡рд┐рд▓рд╛рдк рдЬрд╛рд░реА рд░рдЦрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХреБрдЫ рджрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрдкрдВрджрди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВред рдореИрдВ рдПрдХ Xaml рдЖрдзрд╛рд░рд┐рдд рдкреНрд░рдгрд╛рд▓реА рд╕реЗ рдЖрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЬрд▓реНрджреА рд╕реЗ рдЗрд╕рдХреА рдЖрджрдд рд╣реЛ рдЧрдИред рдмрд╕ рдЗрд╕реЗ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рдпрд╛рд╕ рджреЗрдВред

@escamoteur
рдЕрд░реЗ, рдПрд╕реНрдХреЗрдореЛрдЯрд░ред рдХреНрдпрд╛ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рд╕реНрдкрдВрджрди рд╕реАрдЦрдиреЗ рдореЗрдВ рдмрд╣реБрдд рд╕рдордп рдирд╣реАрдВ рд▓рдЧрд╛рдпрд╛ рд╣реИ?
Flutter.io/tutorials/layout/ рдореЗрдВ, "рдкреИрдХрд┐рдВрдЧ рд╡рд┐рдЬреЗрдЯреНрд╕" рдЕрдиреБрднрд╛рдЧ рдХреЗ рдЕрдВрдд рдореЗрдВ, рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рджреНрд╡рд╛рд░рд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рдХреЛрдб рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдореИрдВрдиреЗ рдлрд╝реНрд▓рдЯрд░ рдЗрд╢реНрдпреВ рдмреНрд▓реЙрдХ рдХреЗ рддрд╣рдд рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЛрдИ рднреА рдЗрд╕ рдкрд░ рдзреНрдпрд╛рди рдирд╣реАрдВ рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ред

@JonathanSum рдХреНрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд╡рд┐рд╖рдп рдкрд░ рдЖрдкрдХреА рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рдХреЛрдИ рд╕рдВрдмрдВрдз рд╣реИ?

@zoechi
рдПрд╕реНрдХреЗрдореЛрдЯрд░ рдиреЗ рдХрд╣рд╛ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ JSX рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдкреНрд░рд╕реНрддрд╛рд╡рдХ рд╕рд┐рд░реНрдл рд╡рд┐рд▓рд╛рдк рдЬрд╛рд░реА рд░рдЦрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдлрд╝реНрд▓рдЯрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдХреБрдЫ рджрд┐рди рдмрд┐рддрд╛рдПрдВрдЧреЗред
рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рд╣рдордиреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдлрд╝реНрд▓рдЯрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реБрдП рдмрд╣реБрдд рджрд┐рди рдмрд┐рддрд╛рдП рд╣реИрдВ, рдФрд░ JSX рдХрд╛ рдЕрдиреБрд░реЛрдз рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣рдорд╛рд░реЗ рджрд┐рд▓ рд╕реЗ рд╣рдорд╛рд░реА рднрд╛рд╡рдирд╛ рд╣реИред

рдЧреНрд░реБрдк рдбрд╛рд░реНрдЯ: "рдбрд╛рд░реНрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдмреЗрд╣рддрд░ рд╣реИ рдФрд░ JSX/DSX рдареАрдХ рдирд╣реАрдВ рд╣реИ"
рд╕рдореВрд╣ JSX / DSX: "JSX / DSX рд╕рд┐рдВрдЯреИрдХреНрд╕ рдмреЗрд╣рддрд░ рд╣реИ рдФрд░ рдбрд╛рд░реНрдЯ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИ"

рдореИрдВ рдЗрд╕реЗ рджреЗрдЦрдиреЗ рд╡рд╛рд▓рд╛ рдЕрдХреЗрд▓рд╛ рд╡реНрдпрдХреНрддрд┐ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛? рджреЛрдиреЛрдВ рдкрдХреНрд╖ рдЕрдкрдиреА-рдЕрдкрдиреА рд╕реНрдерд┐рддрд┐ рдХреЗ рдкрдХреНрд╖ рдФрд░ рд╡рд┐рдкрдХреНрд╖ рдореЗрдВ рд╡реИрдз рдЕрдВрдХ рджреЗрддреЗ рд╣реИрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рдЬреЛ рдЦреЛ рдЧрдпрд╛ рд╣реИ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ @cbazza рдиреЗ рди рдХреЗрд╡рд▓ рдЖрд▓реЛрдЪрдирд╛ рдХреА рдмрд▓реНрдХрд┐ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рднреА рдХрд┐рдпрд╛ред рдлрд╝реНрд▓рдЯрд░ рдХреЛ рд▓рд╛рдн рдкрд╣реБрдВрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реЗрдм рджреЗрд╡реЛрдВ/рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛/рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдФрд░ рд╕реНрдкрдВрджрди рдХреЗ рдЕрдВрддрд░ рдХреЛ рдкрд╛рдЯрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдФрд░ рдореЗрд░реЗ 2 рд╕реЗрдВрдЯ ... рдПрдХ рдкреВрд░реНрдг рд╕реНрдЯреИрдХ рджреЗрд╡ рдХреЗ рд░реВрдк рдореЗрдВ рдореЗрд░реЗ рдкрд╛рд╕ рднрд╛рд╖рд╛рдУрдВ рдФрд░ рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдХреА рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╣реИ ... JSX рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреЗ рдореЗрд░реЗ рдкрд╕рдВрджреАрджрд╛ рддрд░реАрдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ рдФрд░ рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдбрд╛рд░реНрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╣реЛрдЧрд╛ред рдФрд░ рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рд╡рд░реНрддрдорд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЦрд░рд╛рдм рд╣реИ, рдпрд╣ рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рд╣реИ рдХрд┐ рдореИрдВ JSX рд╢реИрд▓реА рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВред

рдореБрдЭреЗ рд╕рдореВрд╣ JSX/DSX рдХреЗ рдЗрд╕ рдЙрджреНрдзрд░рдг рд╕реЗ рдЕрд╕рд╣рдордд рд╣реЛрдирд╛ рдкрдбрд╝реЗрдЧрд╛

рдбрд╛рд░реНрдЯ рдмрд╕ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИ

рдбрд╛рд░реНрдЯ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рдФрд░ рдордЬрдмреВрдд рднрд╛рд╖рд╛ рд╣реИ, рдХреЛрдИ рднреА рднрд╛рд╖рд╛ рдХреЛ рднрдВрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рдЪрд░реНрдЪрд╛ рдбрд╛рд░реНрдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдЗрд╕рдХреЗ рдКрдкрд░ рдПрдХ рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдкрд░рдд рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдзрд┐рдХрд╛рдВрд╢ рдпреВрдЖрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рд╣рдо рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдлрд╝реНрд▓рдЯрд░ рдХреБрдЫ рдРрд╕рд╛ рд╣реА рд╢рд╛рдорд┐рд▓ рдХрд░рддрд╛ рд╣реИред

  • рдПрдВрдбреНрд░реЙрдЗрдб рдореЗрдВ рдПрдХреНрд╕рдПрдордПрд▓ рд▓реЗрдЖрдЙрдЯ рд╣реИрдВред
  • рдЖрдИрдУрдПрд╕ рдореЗрдВ рд╕реНрдЯреЛрд░реАрдмреЛрд░реНрдб рдПрдХреНрд╕рдЖрдИрдмреА (рдПрдХреНрд╕рдПрдордПрд▓) рд╣реИ
  • рдЬреАрдЯреАрдХреЗ+ рдореЗрдВ рдкрдВрдЧреЛ рдЖрджрд┐ рдХреЗ рд▓рд┐рдП рдПрдХреНрд╕рдПрдордПрд▓ рд╣реИред
  • рдХреНрдпреВрдЯреА рдореЗрдВ рдХреНрдпреВрдПрдордПрд▓ (рд╡рд╛рдИрдПрдПрдордПрд▓ рдЬреИрд╕рд╛) рд╣реИ
  • рдЬрд╝рд╛рдорд░реАрди рдореЗрдВ рдПрдХреНрд╕рдПрдПрдордПрд▓ рд╣реИ

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

...

рдХреНрдпрд╛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрддрдирд╛ рдкрд╛рдЧрд▓ рдкреНрд░рд╕реНрддрд╛рд╡ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдлрд╝реНрд▓рдЯрд░ рдЯреАрдо/рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рд╕реЗ рдЗрд╕ рддрд░рд╣ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреА рд╣реИ?

@birkir рдФрд░ рд╡реЗ рд╕рднреА рдХрдИ рдореБрд╕реАрдмрддреЗрдВ рд▓рд╛рддреЗ рд╣реИрдВ рдлрд╝реНрд▓рдЯрд░ рдХреЗ рдкрд╛рд╕ \ o/ рдирд╣реАрдВ рд╣реИ
рджреВрд╕рд░реА рднрд╛рд╖рд╛ рдХреА рдХреЛрдИ рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИред
рдЖрдк рдлрд╝реНрд▓рдЯрд░ рдореЗрдВ рднреА рдЙрд╕реА рднрд╛рд╖рд╛ рдХреЗ рд╕рд╛рде рджреГрд╢реНрдп рдХреЛ рдЕрд▓рдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

@birkir рдпрд╣ рдзрд╛рдЧрд╛ рдбрд╛рд░реНрдЯ рдФрд░ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ 100% рд╣реИред

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

рддреЛ рдпрд╣ рдбрд╛рд░реНрдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИ ... рд▓реЗрдХрд┐рди рд▓реЗрдЖрдЙрдЯ рдХреЗ рд▓рд┐рдП рдбрд╛рд░реНрдЯ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╕реНрдкрдВрджрди рдХреЛ рдХреБрдЫ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рдпрд╣ рдХрд╣рдирд╛ рдХрд┐ рдбрд╛рд░реНрдЯ рдХрд╛рдлреА рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИ, рдЬрдмрдХрд┐ рдпрд╣ рднреА рджрд╛рд╡рд╛ рдХрд░ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХрд╛ рдбрд╛рд░реНрдЯ рд╕реЗ рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИ?

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

рдореБрдЭреЗ рдЦреБрд╢реА рд╣реИ рдХрд┐ рдПрдХ рдФрд░ рдХреНрд░реЙрд╕ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рд╡рд┐рдХрд▓реНрдк рд╣реИ ... рдХреНрдпрд╛ рдРрдкреНрдкрд▓ рдХреБрдЫ рдкреЗрд╢рдХрд╢ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдЕрдЧрд▓рд╛ рд╣реЛрдЧрд╛? рдФрд░ рд╢рд╛рдпрдж рд╡реЗ рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рд╣рдордореЗрдВ рд╕реЗ рдХрд┐рддрдиреЗ рд▓реЛрдЧ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛/рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ? рдЖрдИрдбреАрдХреЗ рдЕрдЧрд░ рдЙрдирдХреЗ рдкрд╛рд╕ рдХреБрдЫ рднреА рдЦрд╛рдирд╛ рдмрдирд╛рдирд╛ рд╣реИред

рдлрд╝реНрд▓рдЯрд░ рдЯреАрдо рдиреЗ рдпрд╣ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдЦреА рд╣реИ (JSX/DSX рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдкрд░) рдФрд░ рд╡реЗ

рдпрд╣ рдмрдЧ рдЕрднреА рднреА рдЦреБрд▓рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдореЗрдВ рдпрд╣ рдкрддрд╛ рдирд╣реАрдВ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рд╣рдо рдпрд╣рд╛рдВ рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рд╣рдо рдЙрддреНрд╕реБрдХрддрд╛ рд╕реЗ рдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП cbazza) рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд▓реЛрдЧ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВред рд╣рдо рдЗрд╕ рддрд░рд╣ рдХреЗ рдХреЛрдбрдЬреЗрди рдЯреВрд▓реНрд╕ рдХреЗ рд▓рд┐рдП рдмрд┐рд▓реНрдб рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдПрдХ рд╣реБрдХ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдРрд╕рд╛ рдХреБрдЫ рдирд╣реАрдВ рд╣реИ рдЬреЛ рд╣рдо рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд░рдЦрддреЗ рд╣реИрдВред рд▓рдВрдмреА рдЕрд╡рдзрд┐ рдореЗрдВ рд╣рдо рдпрд╣рд╛рдВ рдЬреЛ рдХреБрдЫ рд╕реАрдЦрддреЗ рд╣реИрдВ рдЙрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рднрд╛рд╖рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдбрд╛рд░реНрдЯ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рдиреЗ рдХреА рдЖрд╢рд╛ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдбрд╛рд░реНрдЯ рдореЗрдВ рд╣реА E4X/H4X/JSX/DSX рдЬреИрд╕рд╛ рдХреБрдЫ рдЬреЛрдбрд╝рдирд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдпрд╛ рд╢рд╛рдпрдж рд╣рдо рдЬрд╛рдиреЗрдВрдЧреЗ рдХрд┐ рдХреЛрдИ рднреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЗрд╕рд▓рд┐рдП рд╣рдо рдХреБрдЫ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рдпрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рд░ рдХрд┐рд╕реА рдХреЛ рдХреБрдЫ рдЕрд▓рдЧ рдЪрд╛рд╣рд┐рдП рдЗрд╕рд▓рд┐рдП рдХреЛрдбрдЬреЗрди рд╣реБрдХ рдФрд░ рдХрд╕реНрдЯрдо рдкреИрдХреЗрдЬ рдЬреИрд╕реЗ cbazza рдЗрд╕рдХрд╛ рдЬрд╡рд╛рдм рд╣реИред рд╣рдо рдЕрднреА рддрдХ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВред

@jstansbe - рдРрдкреНрдкрд▓ рд╕реЛрдЪрддрд╛ рд╣реИ рдХрд┐ рдХреНрд░реЙрд╕ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХрд╛ рдорддрд▓рдм рдЖрдИрдлреЛрди, рдЖрдИрдкреИрдб рдФрд░ рдореИрдХ рдУрдПрд╕ рд╣реИред рдХреБрдЫ рдХреНрд░реЙрд╕ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдмрдирд╛рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╡реЗ рджреАрд╡рд╛рд░ рд╡рд╛рд▓реЗ рдмрдЧреАрдЪреЗ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдмреБрд░реНрдЬ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд░рдЦрддреЗ рд╣реИрдВ :)

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

return new Container(
    margin: const EdgeInsets.symmetric(horizontal: 8.0),
    child: new Row(
      children: <Widget>[
        new Flexible(
          child: new TextField(
            controller: _textController,
            onSubmitted: _handleSubmitted,
            decoration: new InputDecoration.collapsed(
              hintText: "Send a message"),
          ),
        ),
        new Container(                                                 //new
          margin: new EdgeInsets.symmetric(horizontal: 4.0),           //new
          child: new IconButton(                                       //new
            icon: new Icon(Icons.send),                                //new
            onPressed: () => _handleSubmitted(_textController.text)),  //new
        ),                                                             //new
      ],
    ),
  );

рдЗрд╕ рдбрд╛рд░реНрдЯ рдХреЛ jsx рдХреЛрдб рдореЗрдВ рдЬрд╛рдВрдЪреЗрдВ

<Container margin="">
   <Row>
       <Flexible>
            <TextField   controller=""
                                onSubmitted=""
                                decoration="">
                 <OtherWidget></OtherWidget>

            </TextField>
        </Flexible>
   </Row>
</Container>

рдФрд░ рдЗрд╕ рдЕрдиреНрдп рдкреНрд░рд╛рд░реВрдк рдХреЗ рд╕рд╛рде рддреБрд▓рдирд╛ рдХрд░реЗрдВ рдФрд░ рдЕрдзрд┐рдХ htmlish

  return Container(margin: const EdgeInsets.symmetric(horizontal: 8.0), child:
            Row(children: <Widget>[
                Flexible(child:
                    TextField(controller: _textController,
                              onSubmitted: _handleSubmit,
                              decoration: new InputDecoration.collapsed(hintText: "manda un mensaje"),),
                    ),
                Container(margin: const EdgeInsets.symmetric(horizontal: 4.0),child:
                     IconButton(icon: Icon(Icons.send),
                               onPressed: ()=>_handleSubmit(_textController.text),),)
              ],
            )
    );

рдпрд╣ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рд╕рдорд╛рди рд╣реИ рдФрд░ рдЕрдм рдЖрдкрдХреЛ html/xml/jsx рдХреЗ рд╕рдорд╛рди рд╡рд┐рднрд┐рдиреНрди рд╡рд┐рдЬреЗрдЯреНрд╕ рдХреЛ рдиреЛрдЯрд┐рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдмрд╛рдПрдВ рд╕реЗ рджрд╛рдПрдВ рджреЗрдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

рддрддреНрд╡ (рд╡рд┐рдЬреЗрдЯ) рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рдирдП рд╡рд┐рдЬреЗрдЯ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдЗрдВрдбреЗрдВрдЯреЗрд╢рди рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреЛрдб рдХреЛ рд╕рдордЭ рдФрд░ рдЬрд╛рдВрдЪ рд╕рдХрддрд╛ рд╣реИ

рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рдореИрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреНрд░рд╛рд░реВрдкреЛрдВ рдкрд░ рдЗрд╕ рдкреНрд░рд╛рд░реВрдк рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЗрдВрдбреЗрдВрдЯреЗрд╢рди рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рдЕрднреА рдореИрдВ рдЗрд╕реЗ рд╣рд╛рде рд╕реЗ рдХрд░рддрд╛ рд╣реВрдВ ....

рдпрд╣рд╛рдВ рд╕рднреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рдФрд░ рдирд┐рдЬреА рддреМрд░ рдкрд░ рдореЗрд░реЗ рджреЛрд╕реНрддреЛрдВ (рдореВрд▓ рдореЛрдмрд╛рдЗрд▓ рдРрдк рдбреЗрд╡рд▓рдкрд░реНрд╕, рдЬрд╛рд╡рд╛/рдХреЛрдЯрд▓рд┐рди/рдСрдмреНрдЬреЗрдХреНрдЯрд┐рд╡-рд╕реА/рд╕реНрд╡рд┐рдлреНрдЯ рджреЛрд╕реНрддреЛрдВ) рдХреЗ рд╕рд╛рде рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореЗрд░рд╛ рдЕрд╡рд▓реЛрдХрди:

рд▓реЛрдЧ рджреЛ рдЪреАрдЬреЗрдВ рдорд╛рдВрдЧ рд░рд╣реЗ рд╣реИрдВ,

  • __рдмреЗрд╣рддрд░ рдкрдардиреАрдпрддрд╛ рдФрд░ рдЖрд╕рд╛рди рд▓реЗрдЦрди__ред рдХреБрдЫ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╢реЛрд░ (рдХреЛрд╖реНрдардХ, рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо, new , child , children ) рдХреЗ рд╕рд╛рде рдорд┐рд╢реНрд░рд┐рдд рдЧрд╣рд░рд╛ рдШреЛрдВрд╕рд▓рд╛ рдХреЛрдбрд┐рдВрдЧ рдХреЗ рд╡рд░реНрддрдорд╛рди рддрд░реАрдХреЗ рдореЗрдВ рдХрд╖реНрдЯрдкреНрд░рдж рд╣реИред
  • __ рдХреЛрдб__ рд╕реЗ рдЕрд▓рдЧ рд╢реИрд▓реА/рдбрд┐рдЬрд╛рдЗрдиред рджреГрд╢реНрдп рдкреГрдердХреНрдХрд░рдг рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рд╣реИ (рд╢реИрд▓реА рдХреЛ рдЕрдирд┐рд╡рд╛рд░реНрдп рдХреЛрдб рд╕реЗ рдПрдХ рдирдЬрд╝рд░ рд╕реЗ рдЕрд▓рдЧ рдХрд░рдирд╛) рдФрд░ рдЯреВрд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреГрдердХреНрдХрд░рдг рдЕрдЪреНрдЫрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд▓реЗрдЖрдЙрдЯ рд╕рдВрдкрд╛рджрдХ рдХреЗ рд╕рд╛рде рдЖрдИрдбреАрдИ)ред

рднрд┐рдиреНрди-рднрд┐рдиреНрди рдорддреЛрдВ рд╡рд╛рд▓реЗ рдореБрдЦреНрдпрддрдГ рджреЛ рд╕рдореВрд╣ рднреА рд╣реИрдВ,

  • рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдЬрдЯрд┐рд▓рддрд╛ рдкреЗрд╢ рдХрд┐рдП рдмрд┐рдирд╛ рд╡рд░реНрддрдорд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдирд╛ред
    рдЗрд╕ рджрд┐рд╢рд╛ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреБрдЫ рд╕реБрдзрд╛рд░ рд╣реБрдП рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдбрд╛рд░реНрдЯ 2.0 рдореЗрдВ рд╡реИрдХрд▓реНрдкрд┐рдХ new , const рдФрд░ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд virtual "closing tag" comments рд╕реБрд╡рд┐рдзрд╛ред
  • рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдорд╛рд░реНрдХрдЕрдк рднрд╛рд╖рд╛рдУрдВ (рдЬреЗрдПрд╕рдПрдХреНрд╕ рд▓рд╛рдЗрдХ рдпрд╛ рдПрдХреНрд╕рдПрдордПрд▓ рд▓рд╛рдЗрдХ) рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрдирд╛ред

рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рдпрд╣ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд╣реАрдВ рдирд┐рдХрд╛рд▓ рд╕рдХрддреЗ рдХрд┐ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреМрди рд╕рд╛ рдмреЗрд╣рддрд░ рд╣реИред рдЗрд╕рд▓рд┐рдП рд╕рдореБрджрд╛рдп рдХреЛ рдкрд╣рд▓реЗ рдЕрдкрдиреЗ рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рджреЗрдВ рдФрд░ рдмрд╛рдж рдореЗрдВ рдЕрдВрддрд┐рдо рдирд┐рд░реНрдгрдп (рд╕реНрд╡реАрдХрд╛рд░ рдпрд╛ рдЕрд╕реНрд╡реАрдХрд╛рд░) рдХрд░реЗрдВред

@hooluupog рд╡рд░реНрдЪреБрдЕрд▓ рдХреНрд▓реЛрдЬрд┐рдВрдЧ рдЯреИрдЧ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА IntelliJ, AS, VSCode рдореЗрдВ рдХреБрдЫ рд╕рдордп рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣реА рд╣реИрдВ

@ рд╣рд┐рдХреНрд╕реА

рдпрд╣ рдмрдЧ рдЕрднреА рднреА рдЦреБрд▓рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдореЗрдВ рдпрд╣ рдкрддрд╛ рдирд╣реАрдВ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рд╣рдо рдпрд╣рд╛рдВ рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рд╣рдо рдЙрддреНрд╕реБрдХрддрд╛ рд╕реЗ рдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП cbazza) рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд▓реЛрдЧ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВред

рд▓реЛрдЧ рдореЗрд░реЗ рдкреНрд░рдпреЛрдЧреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рдЕрднреА рдлрд╝реНрд▓рдЯрд░ рдореЗрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдПрдореНрдмреЗрдб рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ; рдЗрд╕рд▓рд┐рдП рдпрд╣ рдПрдХ рдмрд╛рд╣рд░реА/рдСрдирд▓рд╛рдЗрди рдкреНрд░рдпреЛрдЧ рдмрдирд╛ рд╣реБрдЖ рд╣реИ рдЬрд╣рд╛рдВ рд▓реЛрдЧ рдХреЗрд╡рд▓ рдХреНрд╖рдорддрд╛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред

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

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

рдЗрд╕рдХрд╛ рдорддрд▓рдм рдбрд╛рд░реНрдЯ рдореЗрдВ рд╣реА E4X/H4X/JSX/DSX рдЬреИрд╕рд╛ рдХреБрдЫ рдЬреЛрдбрд╝рдирд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

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

https://facebook.github.io/jsx/

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

рд▓реЛрдЧ рдХрд┐рд╕реА рдРрд╕реА рдЪреАрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдЙрдирдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИ рдФрд░ рдлрд┐рд░ рдпрд╣ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреБрдЫ рднреА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд▓реЛрдЧ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдпрд╣ рдореБрдЭреЗ рдореЗрд▓рд┐рд╕рд╛ рдореИрдХрдХрд╛рд░реНрдереА рдХреЗ рдПрд╕рдПрдирдПрд▓ рдкрд░ 'рдпрд╛рддреНрд░рд╛ рдкреНрд░рддрд┐рдмрдВрдз' рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реАрди рд╕реНрдкрд╛рдЗрд╕рд░ рдкреНрд░рддрд┐рд░реВрдкрдг рдХреА рдмрд╣реБрдд рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реИ ... 'рд╢рдмреНрдж рдХрд╛ рдкрд░рд┐рдкрддреНрд░ рдЙрдкрдпреЛрдЧ' :)

https://www.youtube.com/watch?v=1Dvo6EHEJQE&t=48s

рдпрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рд░ рдХрд┐рд╕реА рдХреЛ рдХреБрдЫ рдЕрд▓рдЧ рдЪрд╛рд╣рд┐рдП рдЗрд╕рд▓рд┐рдП рдХреЛрдбрдЬреЗрди рд╣реБрдХ рдФрд░ рдХрд╕реНрдЯрдо рдкреИрдХреЗрдЬ рдЬреИрд╕реЗ cbazza рдЗрд╕рдХрд╛ рдЬрд╡рд╛рдм рд╣реИред рд╣рдо рдЕрднреА рддрдХ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВред

рдкреНрд░рдпреЛрдЧ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХреНрд╖рдорддрд╛рдУрдВ рдХреА рдмреБрд░реА рддрд░рд╣ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЗрд╕рдХреЗ рдмрд┐рдирд╛ рдХреБрдЫ рднреА рдЖрдЧреЗ рдирд╣реАрдВ рдмрдврд╝рддрд╛ рд╣реИ рдФрд░ рдЖрдк рдХреБрдЫ рднреА рдирдпрд╛ рдирд╣реАрдВ рд╕реАрдЦреЗрдВрдЧреЗред

рд▓реЛрдЧ рдореЗрд░реЗ рдкреНрд░рдпреЛрдЧреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ

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

рдХреНрдпрд╛ рдЖрдк рд╕рдордп-рд╕рдордп рдкрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рдмрд┐рд▓реНрдб рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдХреБрдЫ рдмрджрд▓рд╛рд╡ рдХреА рдЙрдореНрдореАрдж рдХрдм рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП https://en.wikipedia.org/wiki/Forward-looking_statement рджреЗрдЦреЗрдВ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рдмрдпрд╛рди рджреЗрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдХреНрдпреЛрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ), рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рдЖрдиреЗ рд╡рд╛рд▓реЗ рд╣рдлреНрддреЛрдВ рдореЗрдВ рдирд╣реАрдВред

рдбрд╛рд░реНрдЯ рднрд╛рд╖рд╛ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдХреЛрдИ рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИ

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

JSX рдХреЛ рдмреИрдХрд▓реЙрдЧ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ рдФрд░ рдЗрд╕реЗ рд▓рд╛рдЦреЛрдВ-рдкреНрд▓рд╕-рдПрдХ рдЕрдиреНрдп рддрддреНрдХрд╛рд▓ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзрд╛ рдХрд░рдиреЗ рджреЗрдВ, рдЧреНрд▓реИрдбреАрдПрдЯрд░-рд╢реИрд▓реА?

рд░рд┐рдПрдХреНрдЯ рд╡реЗрдм рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ HTML рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рд╕рдорд╛рдзрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред JSX рд▓реЛрдХрдкреНрд░рд┐рдп рдирд╣реАрдВ рд╣реБрдЖ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ UI рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ, рдмрд▓реНрдХрд┐ рдЗрд╕рд▓рд┐рдП рдХрд┐ рдпрд╣ HTML рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИред

рд╕реНрдкрдВрджрди рдореЗрдВ рд╡рд╣ рдмрд╛рдзрд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдЧрд▓рдд рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдФрд╕рдд рджрд░реНрдЬреЗ рдХреЗ, рдХреНрд░рд┐рдпрд╛рддреНрдордХ рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕рд╛рде рд╕рдордЭреМрддрд╛ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЕрдЧрд░ рд╣рдо рд╡рд╛рдЪрд╛рд▓рддрд╛ рдХреЛ рдХрдо рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдореИрдВ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЕрдВрдХреЛ (https://github.com/Kotlin/anko/wiki/Anko-Layouts) рд╕реЗ рдкреНрд░реЗрд░рдгрд╛ рд▓реЗрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рд╡рд╣рд╛рдВ рдЖрдк рдХрд╣реАрдВ рднреА рдирдП рд╕реНрдерд╛рдиреАрдп рдЪрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдмрдЪреНрдЪреЛрдВ рдХреА рд╕реВрдЪреА рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рдлреЙрд░-рд▓реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдХреЛрдб рдХрд╛ рдкрд╛рд▓рди рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд▓реЗрдЖрдЙрдЯрдмрд┐рд▓реНрдбрд░ рдЖрдВрдЦреЛрдВ рдкрд░ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдШреЛрдВрд╕рд▓реЗ рдХрд╛ рд╕реНрддрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд▓реИрдореНрдмреНрдбрд╛ рдлрд╝рдВрдХреНрд╢рди рд╣реИ (рдЕрддрд┐рд░рд┐рдХреНрдд рдмрд┐рд▓реНрдбрд░ рд▓реИрдореНрдмреНрдбрд╛ рдкрд╛рд╕ рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ)ред рд╡реИрд╕реЗ рднреА, рдпрд╣ рд╕рд┐рд░реНрдл рдкреНрд░реЗрд░рдгрд╛ рдХреЗ рд▓рд┐рдП рд╣реИ рдФрд░ рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ Flutter рдХреЛ 1:1 рдХреА рдирдХрд▓ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдПред

рд░рд┐рдПрдХреНрдЯ рд╡реЗрдм рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ HTML рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рд╕рдорд╛рдзрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред JSX рд▓реЛрдХрдкреНрд░рд┐рдп рдирд╣реАрдВ рд╣реБрдЖ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ UI рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ, рдмрд▓реНрдХрд┐ рдЗрд╕рд▓рд┐рдП рдХрд┐ рдпрд╣ HTML рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИред

рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╡реЗрдм рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдирд╣реАрдВ рд╣реИ рдФрд░ рди рд╣реА рдпрд╣ HTML рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЕрдиреБрднрд╡реА рд░рд┐рдПрдХреНрдЯ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реЗ рдкреВрдЫреЗрдВ (рдпрд╛ рдЗрд╕реЗ рдФрд░ рдЕрдиреНрдп JSX рдереНрд░реЗрдб рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрдврд╝реЗрдВ) рдФрд░ рдЖрдк рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ JSX рдХреЛ рдХрдИ рд░рд┐рдПрдХреНрдЯ рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ UI рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред

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

рдпрд╣ рдХрдерди рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдк JSX рдХреЛ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВред JSX (DSX рдХреЗ рд░реВрдк рдореЗрдВ) рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рднрд╛рд╖рд╛ (рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ/рдбрд╛рд░реНрдЯ) рд╕реЗ рд╕рднреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╕рдВрд░рдЪрдирд╛рдУрдВ (рдлреЙрд░-рд▓реВрдк, рдЖрджрд┐) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рдпрд╣ рдЯрд┐рдХрдЯ рдХреЗрд╡рд▓ JSX рдЬреИрд╕реА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддрд╛ рд╣реИ, рдЕрдиреНрдп рддрд░реАрдХреЛрдВ (рдЬреИрд╕реЗ Anko) рдХреЗ рд▓рд┐рдП рдХреГрдкрдпрд╛ рд╡рд╣рд╛рдВ рдЪрд░реНрдЪрд╛ рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рдЯрд┐рдХрдЯ рдмрдирд╛рдПрдВред

рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╡реЗрдм рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдирд╣реАрдВ рд╣реИ рдФрд░ рди рд╣реА рдпрд╣ HTML рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЕрдиреБрднрд╡реА рд░рд┐рдПрдХреНрдЯ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реЗ рдкреВрдЫреЗрдВ (рдпрд╛ рдЗрд╕реЗ рдФрд░ рдЕрдиреНрдп JSX рдереНрд░реЗрдб рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрдврд╝реЗрдВ) рдФрд░ рдЖрдк рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ JSX рдХреЛ рдХрдИ рд░рд┐рдПрдХреНрдЯ рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ UI рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред

рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╕реЗ рдмрд╣реБрдд рдкрд╣рд▓реЗ рд░рд┐рдПрдХреНрдЯ рд╕рд╛рдордиреЗ рдЖрдпрд╛ред JSX рдХрд╛ рдореВрд▓ рдбрд┐рдЬрд╝рд╛рдЗрди HTML рд░реЗрдВрдбрд░рд┐рдВрдЧ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рди рдХрд┐ рдореВрд▓ UI рдкрд░ред JSX рдЬреЛ рдмреЗрд╣рддрд░ рдХрд░рддрд╛ рд╣реИ, рдЙрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рднреА рдПрдХ рднреА рдареЛрд╕ рддрд░реНрдХ рдирд╣реАрдВ рджрд┐рдЦрд╛ рдкрд╛рдпрд╛ рд╣реИред рддреБрд▓рдирд╛ рдХрд░рдиреЗ рд╕реЗ

new Scaffold(
  appBar: new AppBar(
    title: new Text(widget.title),
  ),
  body: new Column(
    child: ...,
  ),
)

рдкреНрд░рддрд┐

<Scaffold
    appBar={<AppBar title={<Text>{widget.title}</Text>} />}
  >
  <Column>
    ...
  </Column>
</Scaffold>

рдЖрдкрдиреЗ рдЕрдк-рдЯреВ-рдбреЗрдЯ рддреБрд▓рдирд╛ рдирд╣реАрдВ рдХреА рд╣реИ рдФрд░ рдЖрдк рдХреЗрд╡рд▓ рдПрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЕрдзрд┐рдХ рд╕рд╛рдордЧреНрд░реА рдбрд╛рд▓ рд░рд╣реЗ рд╣реИрдВред рдЖрдкрдХреЛ рдЗрд╕рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП:

Scaffold(
  appBar: AppBar(title: Text(widget.title)),
  body: Column(
    child: ...,
  ),
)

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдХреИрд╕реЗ рд╕рднреА рдмрджрд╕реВрд░рдд {<{<>} />} рдФрд░ рдмрдВрдж </...> рдЯреИрдЧ рдЪрд▓реЗ рдЧрдП рд╣реИрдВред

рдпрд╣ рдХрдерди рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдк JSX рдХреЛ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рд╣реИрдВред JSX (DSX рдХреЗ рд░реВрдк рдореЗрдВ) рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рднрд╛рд╖рд╛ (рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ/рдбрд╛рд░реНрдЯ) рд╕реЗ рд╕рднреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╕рдВрд░рдЪрдирд╛рдУрдВ (рдлреЙрд░-рд▓реВрдк, рдЖрджрд┐) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рдирд╣реАрдВ, рдЖрдк JSX рдХреЗ рднреАрддрд░ if рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдпрд╛ рдлреЙрд░-рд▓реВрдк (рдпрд╛ рд╕реНрд╡рд┐рдЪ рдпрд╛ рдХреЛрдИ рдЕрдиреНрдп рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ:

function render(data) {
  return (
    <div>
      // This is impossible
      let total = 0;
      for (let item of data.list) {
        total += item.value;
        <div>{ total }</div>
        <div>{ item.name }</div>
      }
    </div>
  )
}

рдХреЗрд╡рд▓ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИред рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рд╕рд╢рд░реНрдд рдСрдкрд░реЗрдЯрд░реЛрдВ ( c ? x : y , рдЬреЛ else if рдмрд╣реБрдд рдмрджрд╕реВрд░рдд рдмрдирд╛рддрд╛ рд╣реИ) рдФрд░ Array.map рдЖрджрд┐ (рдЬреЛ рдмрд╣реБрдд рдмрджрд╕реВрд░рдд рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рдЕрдкрдиреЗ рдХреЛрдб рдХреЗ рдХреБрдЫ рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЛ рд░реЗрдВрдбрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдпрд╛ рдПрдХ рдЕрд▓рдЧ рд╕рд╣рд╛рдпрдХ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВред рд╕реНрдкрдВрджрди рдХреЗ рд╕рд╛рде рднреА рдРрд╕рд╛ рд╣реА рд╣реИред Anko рдореЗрдВ рдпрд╣ рд╕реАрдорд╛ рдирд╣реАрдВ рд╣реИ рдФрд░ рд▓реЗрдЦрди (рдХреБрдЫ) UI рдХреЛрдб рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рдмрдирд╛рддрд╛ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ JSX рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдЪрд░реНрдЪрд╛ рдореЗрдВ рдпрд╣ рдкреВрдЫрдирд╛ рдХрд╛рдлреА рдорд╛рдиреНрдп рдФрд░ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ рдпрд╛ рдпрджрд┐ рд╣рдо рдХреБрдЫ рдмреЗрд╣рддрд░ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдиреНрдпрдерд╛ рд╣рдо рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдЧрд▓рдд рдХрд╛рд░реНрдпреЛрдВ рдкрд░ рдмрд░реНрдмрд╛рдж рдХрд░ рджреЗрдВрдЧреЗред

рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╕реЗ рдмрд╣реБрдд рдкрд╣рд▓реЗ рд░рд┐рдПрдХреНрдЯ рд╕рд╛рдордиреЗ рдЖрдпрд╛ред JSX рдХрд╛ рдореВрд▓ рдбрд┐рдЬрд╝рд╛рдЗрди HTML рд░реЗрдВрдбрд░рд┐рдВрдЧ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рди рдХрд┐ рдореВрд▓ UI рдкрд░ред

JSX рдХрд╛ рдореВрд▓ рдбрд┐рдЬрд╝рд╛рдЗрди рдЯреНрд░реА рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЛ рдмрдирд╛рдиреЗ/рд╣реЗрд░рдлреЗрд░ рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдЪрд┐рдд рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ рдЬреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ UI рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╕рдордп рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ; рдШрдЯрдХ рдкрджрд╛рдиреБрдХреНрд░рдо рд╕реЛрдЪреЗрдВ (https://facebook.github.io/jsx/) рдЬреЛ рд╡реЗрдм рд╡рд┐рдХрд╛рд╕, рдореВрд▓ рд╡рд┐рдХрд╛рд╕, рдХрд┐рд╕реА рднреА UI рд╡рд┐рдХрд╛рд╕ рдЖрджрд┐ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВред

JSX рдЬреЛ рдмреЗрд╣рддрд░ рдХрд░рддрд╛ рд╣реИ, рдЙрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рднреА рдПрдХ рднреА рдареЛрд╕ рддрд░реНрдХ рдирд╣реАрдВ рджрд┐рдЦрд╛ рдкрд╛рдпрд╛ рд╣реИред

рдпрд╣реА рд╡рд╣ рдмрд┐рдВрджреБ рд╣реИ, рд╣рдо рд╡рд░реНрддрдорд╛рди рддрд░реАрдХреЗ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд╣рдо рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рддрд░реАрдХрд╛ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рд░рд┐рдПрдХреНрдЯ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛред

рдЖрдкрдХрд╛ Anko рдкреНрд░рд╕реНрддрд╛рд╡ Android Kotlin рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝реЗрдВ рдФрд░ рдПрдХ рдРрд╕реА рдпреБрдХреНрддрд┐ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░реЗрдВ рдЬреЛ рдПрдХ рдЕрд▓рдЧ рдЯрд┐рдХрдЯ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдлрд╝реНрд▓рдЯрд░ рдкрджрд╛рдиреБрдХреНрд░рдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗред рдПрдХ рдмрд╛рд░ рдЬрдм рдореИрдВ рджреЗрдЦ рд▓реЗрддрд╛ рд╣реВрдВ (рдпрд╛ рдЖрдкрдХреЗ рд╕реНрдкреЗрдХ рдХреЗ рдСрдирд▓рд╛рдЗрди рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЖрдЬрдорд╛рддрд╛ рд╣реВрдВ) рддреЛ рдореИрдВ рдпрд╣ рджреЗрдЦрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реВрдВ рдХрд┐ рдпрд╣ рд╡рд░реНрддрдорд╛рди рд╕реНрдкрдВрджрди рд╡рд┐рдЬреЗрдЯ рдкрджрд╛рдиреБрдХреНрд░рдо рдХреЗ рд╕рд╛рде рдЙрддреНрдкрдиреНрди/рдЗрдВрдЯрд░рдСрдкрд░реЗрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред

рдирд╣реАрдВ, рдЖрдк JSX рдХреЗ рднреАрддрд░ if рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдпрд╛ рдлреЙрд░-рд▓реВрдк (рдпрд╛ рд╕реНрд╡рд┐рдЪ рдпрд╛ рдХреЛрдИ рдЕрдиреНрдп рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ:

рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рдЖрдкрдХреЛ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдВрднрд╡ рд╣реИ: рдПрдХ рдЕрдирд╛рдо рдлрд╝рдВрдХреНрд╢рди рдмрдирд╛рдПрдВ рдФрд░ рдЙрд╕реЗ рдХреЙрд▓ рдХрд░реЗрдВред

function render(data) {
  return (
    <div>
      { ()=>{
        // This is *not* impossible
        let divs=[];
        let total = 0;
        for (let item of data.list) {
          total += item.value;
          divs.push(<div>{ total }</div>);
          divs.push(<div>{ item.name }</div>);
        }
        return divs;
      }() }
    </div>
  )
}

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ JSX рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдореЗрдВ рдпрд╣ рдкреВрдЫрдирд╛ рдХрд╛рдлреА рдорд╛рдиреНрдп рдФрд░ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИред

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

рд╡реИрд╕реЗ, рдореЗрд░реЗ рдСрдирд▓рд╛рдЗрди рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдкрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ:
https://spark-heroku-dsx.herokuapp.com/index.html

@<Scaffold>
  <appBar:AppBar>
     <title:Text [widget.title]/>
  </appBar:AppBar>
  <Column>
    {kids}
  </Column>
</Scaffold>@

рдФрд░ рдЖрдкрдХреЛ рдорд┐рд▓рддрд╛ рд╣реИ:

--------new Scaffold(
--------  appBar: new AppBar(
--------    title: new Text(
--------      widget.title,
--------    ),
--------  ),
--------  child: new Column(
--------    child: kids,
--------  ),
--------);

DSX JSX рдХреЗ рд╕рдорд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдбрд╛рд░реНрдЯ рдФрд░ рд╕реНрдкрдВрджрди рдХреЗ рд▓рд┐рдП, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХреА рдЕрдкрдиреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ рдЬреЛ рдКрдкрд░ рджрд┐рдП рдЧрдП рд▓рд┐рдВрдХ рдкрд░ рд╡рд░реНрдгрд┐рдд рд╣реИрдВред

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

@charafau рдХреНрдпрд╛ рдЖрдк "рдПрдВрдбреНрд░реЙрдЗрдб рд╕реЗ рдПрдХреНрд╕рдПрдордПрд▓ рд▓реЗрдЖрдЙрдЯ" рдХрд╛ рдЙрджрд╛рд╣рд░рдг/рдЖрдИрдПрдордЬреА/рд▓рд┐рдВрдХ рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХрд╛ рдЖрдк рдЬрд┐рдХреНрд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВ?

рдирд╣реАрдВ, @wkornewaldред рдпрджрд┐ "рдЬреЗрдПрд╕рдПрдХреНрд╕ рд▓реЛрдХрдкреНрд░рд┐рдп рдирд╣реАрдВ рд╣реБрдЖ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдпреВрдЖрдИ рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдЪрдЯреАрдПрдордПрд▓ рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ", рддреЛ рд░рд┐рдПрдХреНрдЯ рдЕрднреА рднреА рдореЛрдмрд╛рдЗрд▓ рдРрдк рдФрд░ рдбреЗрд╕реНрдХрдЯреЙрдк рдРрдк рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдХрд░рддрд╛ рд╣реИ? рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рдЖрдкрдХрд╛ рдЬреАрдердм рдбреЗрд╕реНрдХрдЯреЙрдк рдПрдкреНрд▓рд┐рдХреЗрд╢рди, рд╡реЙрд▓рдорд╛рд░реНрдЯ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдореЛрдмрд╛рдЗрд▓ рдРрдк рдФрд░ рдЯреЗрд╕реНрд▓рд╛ рдРрдк рдФрд░ рд╕реНрдХрд╛рдЗрдк рднреА рдЖрд░рдПрди рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдП рдЧрдП рд╣реИрдВред

рд░рд┐рдПрдХреНрдЯ JSX рдЯреИрдЧ рдореЗрдВ рд▓реВрдк рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдбрд╛рд▓рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд░рд┐рдПрдХреНрдЯ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдШрдЯрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИред рдКрдкрд░реА рднрд╛рдЧ рддрд░реНрдХ рд╣реИ рдФрд░ рдиреАрдЪреЗ рдХрд╛ рднрд╛рдЧ JSX рд╣реИ, рдФрд░ рдпрд╣ рд╣рдореЗрд╢рд╛ рдРрд╕рд╛ рд╣реА рд╣реЛрддрд╛ рд╣реИред рд╕рдм рдХреБрдЫ рдХрдИ рдШрдЯрдХреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рд╣реИ рдФрд░ рдПрдХ рдмрдбрд╝реЗ рдШрдЯрдХ рдореЗрдВ рдПрдХ рд╕рд╛рде рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣рд╛рдВ рдЕрдзрд┐рдХрд╛рдВрд╢ рд▓реЛрдЧ рдЬреЛ JSX рдХреЗ рд╡рд┐рд░реБрджреНрдз рдХреЗрд╡рд▓ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ JSX рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ HTML, XML, рдпрд╛ рдХрдо рд╡рд░реНрдмреЛрдЬрд╝ рд╕рдорд╛рдзрд╛рди рд╣реИред

@JonathanSum

рдпрд╣рд╛рдБ рдЕрдзрд┐рдХрд╛рдВрд╢ рд▓реЛрдЧ рдЬреЛ JSX рдХреЗ рд╡рд┐рд░реБрджреНрдз рдХреЗрд╡рд▓ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ JSX рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ HTML рд╣реИ

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡рд░реАрдпрддрд╛ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЬреЗрдПрд╕рдПрдХреНрд╕/рдбреАрдПрд╕рдПрдХреНрд╕ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рдХреЛрдИ рдЕрдиреНрдп рддрд░реНрдХ рдирд╣реАрдВ рдерд╛ред рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рд╣реА рдКрдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рд╣реИ, рдпрд╣ рдареАрдХ рд╣реИ, рд▓реЗрдХрд┐рди рдХреГрдкрдпрд╛ рдпрд╣ рдордд рд╕рдордЭрд┐рдП рдХрд┐ рд▓реЛрдЧ JSX рдХреЗ рдЦрд┐рд▓рд╛рдл рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЗрд╕реЗ рдирд╣реАрдВ рд╕рдордЭрддреЗ рд╣реИрдВ, рдЬрдм рдЕрдЪреНрдЫреЗ рддрдереНрдпрд╛рддреНрдордХ рддрд░реНрдХреЛрдВ рдХреА рдХреЛрдИ рд╕реВрдЪреА рдирд╣реАрдВ рд╣реИ рдЬреЛ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ рдХрд┐ JSX рд╕рд╛рджреЗ рдбрд╛рд░реНрдЯ рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡рд░реАрдпрддрд╛ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЬреЗрдПрд╕рдПрдХреНрд╕/рдбреАрдПрд╕рдПрдХреНрд╕ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рдХреЛрдИ рдЕрдиреНрдп рддрд░реНрдХ рдирд╣реАрдВ рдерд╛ред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВ, рдХрдИ рдкрд╣рд▓реЗ рджрд┐рдП рдЧрдП рдереЗ, рдмрд╕ рджреЛрдиреЛрдВ рдзрд╛рдЧреЗ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрдврд╝реЗрдВред рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдЗрди 2 рдмрд╛рддреЛрдВ рдХрд╛ рдЬрд┐рдХреНрд░ рдХрд┐рдпрд╛ рдерд╛:
(1) рдХреЛрдИ рдФрд░ 'рдмрдЪреНрдЪрд╛' рдФрд░ 'рдмрдЪреНрдЪреЗ' рд╕рд╛рдорд╛рди рдирд╣реАрдВ
(2) рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдЙрдкрдХрд░рдгреЛрдВ рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ (рдкрд╛рд░реНрд╕, рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдФрд░ рдкреБрди: рдЙрддреНрдкрдиреНрди)

(2) рдХреЗ рд╕рд╛рде рдЖрдк рдХреЗрд╡рд▓ рдбрд╛рд░реНрдЯ рдХреЗ рд╕рд╛рде рд╕рдВрднрд╡ рдирд╣реАрдВ рдЪреАрдЬреЛрдВ рдХреЛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рд░реНрдХрдЕрдк рдХреЛ рдмрдврд╝рд╛ рд╕рдХрддреЗ рд╣реИрдВ; рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП DSX рдХрд╛ рд╕реНрдкреНрд░реЗрдб рдСрдкрд░реЗрдЯрд░ рдпрд╛ рдЫреЛрдЯреЗ рд╕реЗрдЯ рд╕реЗ рдХрдИ рдлрд╝рдВрдХреНрд╢рди рдкреИрд░рд╛рдореАрдЯрд░ рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ред

рджреВрд╕рд░реЛрдВ рдиреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЕрдЪреНрдЫреЗ рдЕрдВрдХ рдкреНрд░рджрд╛рди рдХрд┐рдП рд╣реИрдВ рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕реЗ рдЖрдкрдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдЦреЛрдж рд░рд╣рд╛ рд╣реВрдВ;)

(1) рдЬреИрд╕рд╛ рдХрд┐ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдбрд╛рд░реНрдЯ рдореЗрдВ рдРрд╕реА рдЪреАрдЬреЛрдВ рдХреЛ рдмрджрд▓рд╛/рд╕реБрдзрд╛рд░ рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЪрд░реНрдЪрд╛рдПрдВ рдереАрдВред рдпрд╣ рд╕рд┐рд░реНрдл рдбрд╛рд░реНрдЯ 2 рд░рд┐рд▓реАрдЬ рд╕реЗ рдкрд╣рд▓реЗ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред
рд╕рд┐рд░реНрдл рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рдбреАрдПрд╕рдПрдХреНрд╕ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдФрд░ рдбрд╛рд░реНрдЯ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореЗрд░реА рд░рд╛рдп рдореЗрдВ рдЙрдЪрд┐рдд рддрд░реНрдХ рдирд╣реАрдВ рд╣реИред
(2) рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рд╣реИ рдХрд┐ рдпрд╣ рдбрд╛рд░реНрдЯ рдХреЗ рд╕рд╛рде рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдбрд╛рд░реНрдЯ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдкрд╛рд░реНрд╕рд░ рд╣реИред

рджреВрд╕рд░реЛрдВ рдиреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЕрдЪреНрдЫреЗ рдЕрдВрдХ рдкреНрд░рджрд╛рди рдХрд┐рдП рд╣реИрдВ рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕реЗ рдЖрдкрдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдЦреЛрдж рд░рд╣рд╛ рд╣реВрдВ;)

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

рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рдереА, рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡рд░реАрдпрддрд╛ рдХреЛ рдПрдХ рд╡реИрдз рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рдмрд╣реБрдд рд╕рд╛рд░реЗ рддрдереНрдпрд╛рддреНрдордХ рддрд░реНрдХреЛрдВ рдХрд╛ рднреА рджрд╛рд╡рд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреВрдЫрдирд╛ рд╡реИрдз рд╣реИред

рдЖрдк 'рд╡реИрдз рддрд░реНрдХ' рдорд╛рдВрдЧрддреЗ рд░рд╣рддреЗ рд╣реИрдВ рдФрд░ рдЬрдм рд╡реЗ рджрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ рддреЛ рдЖрдк рдЙрдиреНрд╣реЗрдВ 'рднрд╡рд┐рд╖реНрдп рдХреЗ рдбрд╛рд░реНрдЯ рдХреЗ рдкрд╛рд╕ рдпрд╣' рдпрд╛ 'рдпрд╣ рдПрдХ рд╡реИрдз рддрд░реНрдХ рдирд╣реАрдВ рд╣реИ' рдХреЗ рд░реВрдк рдореЗрдВ рдЦрд╛рд░рд┐рдЬ рдХрд░ рджреЗрддреЗ рд╣реИрдВред

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

рдпрд╣ рднреА рдПрдХ рддрдереНрдп рд╣реИ рдХрд┐ рдкреВрд░реНрдг рдбрд╛рд░реНрдЯ рднрд╛рд╖рд╛ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХреНрд╕рдПрдордПрд▓ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ рдФрд░ рд╣рд░ рднрд╛рд╖рд╛ рдореЗрдВ рдПрдХ рдПрдХреНрд╕рдПрдордПрд▓ рдкрд╛рд░реНрд╕рд░ рд╣реЛрддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рдХреЗрд╡рд▓ рдбрд╛рд░реНрдЯ рдореЗрдВ рдПрдХ рдкреВрд░реНрдг рдФрд░ рдкреВрд░реНрдг рдбрд╛рд░реНрдЯ рднрд╛рд╖рд╛ рдкрд╛рд░реНрд╕рд░ рд╣реЛрддрд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рднреА рдПрдХ рд╡реИрдз рддрд░реНрдХ рд╣реИ?

рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╡реИрдз рддрд░реНрдХ рд╣реИрдВ, рд╡реЗ рдЖрдкрдХреЗ рд▓рд┐рдП рдорд╛рдиреНрдп рдирд╣реАрдВ рд╣реИрдВ рдФрд░ рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣рд╕ рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ред рдЕрдЧрд░ рд▓реЛрдЧреЛрдВ рдХреА рд░реБрдЪрд┐ рдЙрд╕ рдмрд╛рдд рдореЗрдВ рд╣реИ рдЬреЛ рдХрд╣рд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдмрд╕ JSX рдкрд░ 2 рд╕реВрддреНрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкрдврд╝реЗрдВред рдореБрдЭреЗ рдЖрдкрдХреЛ рдбреАрдПрд╕рдПрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордирд╛рдиреЗ рдореЗрдВ рдХреЛрдИ рджрд┐рд▓рдЪрд╕реНрдкреА рдирд╣реАрдВ рд╣реИ, рдЖрдк рд╕рд╛рджреЗ рдбрд╛рд░реНрдЯ рд╕реЗ рдЦреБрд╢ рд╣реИрдВ рддреЛ рдРрд╕рд╛ рд╣реА рд╣реЛ; рдореИрдВ рдирд╣реАрдВ рд╣реВрдВред

рд╡реИрдХрд▓реНрдкрд┐рдХ DSX рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд▓рд┐рдП рддрд░реНрдХ:

1) рд░рд┐рдПрдХреНрдЯ (рд╡реЗрдм тАЛтАЛрдФрд░ рджреЗрд╢реА) рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдЕрдзрд┐рдХ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдСрдирдмреЛрд░реНрдб рдФрд░ рдЖрдХрд░реНрд╖рд┐рдд рдХрд░реЗрдВ
2) рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдШрдЯрдХреЛрдВ рдХреЛ рдлрд╝реНрд▓рдЯрд░ рд╡рд┐рдЬреЗрдЯ рдореЗрдВ рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдХрд╛ рдмреЗрд╣рддрд░ рдЕрдиреБрднрд╡
3) рд╡рд┐рдЧреЗрдЯреНрд╕ рдореЗрдВ рдмрдЪреНрдЪреЗ/рдмрдЪреНрдЪреЛрдВ рдХреЗ рдЧреБрдгреЛрдВ рдХреА рдирд┐рд░рдВрддрд░рддрд╛ рдХреЛ рдмрдврд╝рд╛рддрд╛ рд╣реИ
4) рдХреЛрдб рдкрдардиреАрдпрддрд╛ (рд░рд╛рдп рддрд░реНрдХ)
5) рдбрд╛рд░реНрдЯ рд▓рд╛рдЗрдирд┐рдВрдЧ рд╕реЗ рдЕрд▓рдЧ рд▓реЙрдЬрд┐рдХ рд▓рд╛рдЗрдирд┐рдВрдЧ рджреЗрдЦреЗрдВ
6) UI рдирд┐рд░реНрдорд╛рдг рдЯреВрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рджреБрдирд┐рдпрд╛ рдЦреЛрд▓рддрд╛ рд╣реИ
7) рдкреВрд░реНрд╡ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рд▓рд┐рдП рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдЦреЛрд▓рддрд╛ рд╣реИ

рдбреАрдПрд╕рдПрдХреНрд╕ +1

рдбреАрдПрд╕рдПрдХреНрд╕ +1

рдкрдХреНрд╖/рд╡рд┐рдкрдХреНрд╖ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рд▓рд┐рдЦрдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛, рд▓реЗрдХрд┐рди рдЗрди рд╕рднреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рдкрдврд╝рдХрд░, рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рд╕рдм рдХреБрдЫ рдмрд╛рд░-рдмрд╛рд░ рджреЛрд╣рд░рд╛рдиреЗ рд╡рд╛рд▓рд╛ рд╣реВрдВред
рдЗрддрдирд╛ рднреЛрд▓рд╛ рдФрд░ рдЕрдЬреНрдЮрд╛рдиреА рд╣реЛрдирд╛ рдмрдВрдж рдХрд░реЛ, рдХреЛрдИ рдирд╣реАрдВ рдХрд╣рддрд╛ рдХрд┐ рдЖрдкрдХреЛ DSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ UI рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИ (рдмреЗрд╣рддрд░ рд╡рд┐рдХрд▓реНрдк)ред
рдПрдХ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЖрдк JS рдХреЛ 101203103 рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рд╕реЗ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВред

рдЦреИрд░, рд╣рдореЗрд╢рд╛ рдПрдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдкреНрд▓рдЧрдЗрди рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реЛрддрд╛ рд╣реИ рдЬреЛ DSX рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдирд┐рдпрдорд┐рдд рдбрд╛рд░реНрдЯ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИ, рддрд╛рдХрд┐ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рдХреЛрдИ рдЕрддрд┐рд░рд┐рдХреНрдд рдХрд╛рдо рди рдХрд░рдирд╛ рдкрдбрд╝реЗред

рдЕрд╕рд▓реА рд╕рд╡рд╛рд▓ рдпрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВред

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

рдЯреАрдПрд▓рдбреАрдЖрд░; рдпрджрд┐ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ DSX рдЗрддрдирд╛ рдЦрд░рд╛рдм рд╣реЛ, рддреЛ рдПрдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдкреНрд▓рдЧрдЗрди рд▓рд┐рдЦреЗрдВ рдФрд░ рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рдбрд╛рд░реНрдЯ рдореЗрдВ рд▓рд╛рдПрдВред рдЗрдВрдЯрд░рдиреЗрдЯ рдЖрдкрдХреЛ рдкреНрдпрд╛рд░ рдХрд░реЗрдЧрд╛, рдЖрдкрдХреЛ рд╣рдЬрд╛рд░реЛрдВ рдЧрд┐рдердм рд╕рд┐рддрд╛рд░реЗ рдорд┐рд▓реЗрдВрдЧреЗ, рдФрд░ рдЖрдкрдХреЛ рдРрд╕рд╛ рд▓рдЧреЗрдЧрд╛ рдЬреИрд╕реЗ рдпрд╣ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╣реИред рдЬреАрдд-рдЬреАрддред

рдкреБрдирд╢реНрдЪ рдореИрдВ рдЖрдкрд╕реЗ рдЗрд╕реЗ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рджреМрдбрд╝ рд▓рдЧрд╛рдКрдВрдЧрд╛

рдЦреИрд░, рд╣рдореЗрд╢рд╛ рдПрдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдкреНрд▓рдЧрдЗрди рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реЛрддрд╛ рд╣реИ рдЬреЛ DSX рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдирд┐рдпрдорд┐рдд рдбрд╛рд░реНрдЯ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИ, рддрд╛рдХрд┐ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рдХреЛрдИ рдЕрддрд┐рд░рд┐рдХреНрдд рдХрд╛рдо рди рдХрд░рдирд╛ рдкрдбрд╝реЗред

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

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

рдпрджрд┐ рдЖрдк рд╕реВрддреНрд░ рдкрдврд╝рддреЗ рд╣реИрдВ, рддреЛ рдкрд╣рд▓реЗ рджрд┐рди рд╕реЗ рдпрд╣реА рд╡рд┐рдЪрд╛рд░ рд░рд╣рд╛ рд╣реИред рд╣рдо рд╕рд┐рд░реНрдл рдПрдХ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдкрдВрджрди/рдбрд╛рд░реНрдЯ рд╕реЗ рд╕рдорд░реНрдерди рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдЯреАрдПрд▓рдбреАрдЖрд░; рдпрджрд┐ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ DSX рдЗрддрдирд╛ рдЦрд░рд╛рдм рд╣реЛ, рддреЛ рдПрдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдкреНрд▓рдЧрдЗрди рд▓рд┐рдЦреЗрдВ рдФрд░ рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рдбрд╛рд░реНрдЯ рдореЗрдВ рд▓рд╛рдПрдВред рдЗрдВрдЯрд░рдиреЗрдЯ рдЖрдкрдХреЛ рдкреНрдпрд╛рд░ рдХрд░реЗрдЧрд╛, рдЖрдкрдХреЛ рд╣рдЬрд╛рд░реЛрдВ рдЧрд┐рдердм рд╕рд┐рддрд╛рд░реЗ рдорд┐рд▓реЗрдВрдЧреЗ, рдФрд░ рдЖрдкрдХреЛ рдРрд╕рд╛ рд▓рдЧреЗрдЧрд╛ рдЬреИрд╕реЗ рдпрд╣ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╣реИред рдЬреАрдд-рдЬреАрддред

рдзрд╛рдЧрд╛ рдкрдврд╝реЗрдВ, рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА @cbazza рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛ рдЪреБрдХрд╛ рд╣реИ (рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдкреНрд▓рдЧрдЗрди рдЗрд╕реЗ рдХрд╛рдЯрдиреЗ рд╡рд╛рд▓рд╛ рдирд╣реАрдВ рд╣реИ)

https://github.com/flutter/flutter/issues/11609#issuecomment -388484681

рдкреБрдирд╢реНрдЪ рдореИрдВ рдЖрдкрд╕реЗ рдЗрд╕реЗ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рджреМрдбрд╝ рд▓рдЧрд╛рдКрдВрдЧрд╛

рдорд╣рд╛рди! рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдЗрд╕рдХрд╛ рдПрдХ рд╕рд┐рджреНрдзрд╛рдВрдд рднреА рджреЗрдЦрдирд╛ рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛрдЧрд╛ред

рдПрд╕рдЬреАрдЯреАрдПрдоред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдо рд╕рднреА рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рдкреНрд░реА-рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рд╕рдорд░реНрдерди рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдореИрдВ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдкрд╛рд╕ рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд┐рд▓реНрдбрд░ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ

<strong i="6">@override</strong>
Widget build(BuildContext context) {
    return container()
      .height(56.0)
      .padding(8.0)
      .decoration(BoxDecoration(color: Colors.blue[500]))
      .child(text("Hello world!")
                   .style(...)
                  .build());
}

рдЬреИрд╕реЗ https://fblitho.com/

Text.create(context)
    .text("Hello World")
    .textSizeDip(50)
    .build();

рдбреАрдПрд╕рдПрдХреНрд╕ +1

рдореБрдЭреЗ JSX рдХреЗ рд▓рд┐рдП рддрд░реНрдХ рдорд┐рд▓рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ (рд╕реНрд╡рдпрдВ рд╢рд╛рдорд┐рд▓) рд╣реИрдВ рдЬреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдореЗрдВ рдПрдХреНрд╕рдПрдордПрд▓ рдХреЛ рдЬрд╛рдо рдХрд░рдиреЗ рдХреЗ рд╡рд┐рдЪрд╛рд░ рд╕реЗ рдирдлрд░рдд рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рд╕рд┐рд░реНрдл рдЧрд▓рдд рд▓рдЧрддрд╛ рд╣реИ (рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рджреВрд╕рд░реЗ рдРрд╕рд╛ рдорд╣рд╕реВрд╕ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ)ред

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

@wstrange
рдореИрдВ рддреБрдореНрд╣реЗрдВ рд╕рдордЭ рд╕рдХрддрд╛ рд╣реБрдБред рдореИрдВ рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХреЗ рдЦрд┐рд▓рд╛рдл рд╣реБрдЖ рдХрд░рддрд╛ рдерд╛ рдФрд░ рдЬреЗрдПрд╕ рдХреЛ рдПрдХреНрд╕рдПрдордПрд▓/рдПрдЪрдЯреАрдПрдордПрд▓ рдХреЗ рд╕рд╛рде рдорд┐рд▓рд╛рддрд╛ рдерд╛ .... рдлрд┐рд░ рдореИрдВрдиреЗ рдХреЛрд╢рд┐рд╢ рдХреАред рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдорд╣реАрдиреЗ рдмрд┐рддрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ JSX рд╕реЗ рдкреНрдпрд╛рд░ рд╣реЛ рдЧрдпрд╛ред рджреЛ рд╣рддреНрдпрд╛рд░реЗ рдлрд╛рдпрджреЗ рд╣реИрдВ:

  1. рдХреЛрдИ рдирдпрд╛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдФрд░ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдирд╣реАрдВ
  2. рдЪрд░, рдХрд╛рд░реНрдпреЛрдВ рдЖрджрд┐ рдХрд╛ рдХреЛрдИ рдФрд░ рдЧреБрдЬрд░рдирд╛ рдирд╣реАрдВред

@wstrange ,

рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдПрдХ рдмрд╛рд░ рд▓рд╛рдЧреВ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рд╣рдЯрд╛рдирд╛ рд▓рдЧрднрдЧ рдЕрд╕рдВрднрд╡ рд╣реИ,

рдпрд╣ рдПрдХ рджрд┐рдпрд╛ рдирд╣реАрдВ рд╣реИ, рдХрд┐рд╕рдиреЗ рд╕реЛрдЪрд╛ рд╣реЛрдЧрд╛ рдХрд┐ Google рдореИрдердПрдордПрд▓ рдХреЛ рдХреНрд░реЛрдо рд╕реЗ рд╣рдЯрд╛ рджреЗрдЧрд╛?

рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдлрд╝реНрд▓рдЯрд░ рдРрдк рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рддрд░реАрдХреЗ рдореЗрдВ рдкрд░реНрдпрд╛рдкреНрдд рдмрджрд▓рд╛рд╡ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдбрд╛рд░реНрдЯ 2 рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рдХреБрдЫ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдХреИрд╕реЗ рдЪрд▓рддреА рд╣реИрдВред

рдпрд╣ рдлрд╝реНрд▓рдЯрд░ рдРрдкреНрд╕ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рддрд░реАрдХреЗ рдореЗрдВ рдХреЛрдИ рдмрджрд▓рд╛рд╡ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рддрд░реАрдХрд╛ рд╣реИ рдЬреЛ рд╡рд░реНрддрдорд╛рди рддрд░реАрдХреЗ рдХреЛ рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ, рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдпрд╣ рдХреНрд▓рд╛рд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд▓рд┐рдП рдмрд╕ рдПрдХ рдЕрд▓рдЧ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реИред рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдлрд╝реНрд▓рдЯрд░ рдХрдХреНрд╖рд╛рдУрдВ рд╕реЗ рдХрд┐рд╕реА рднреА рдЬрд╛рдирдХрд╛рд░реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛ рдореИрдкрд┐рдВрдЧ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдХрд┐рд╕реА рдХреЗ рдХреЛрдб рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЕрднреА рдФрд░ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдлрд╝реНрд▓рдЯрд░ рдХреЗ рд▓рд┐рдП рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

@ рдмреЗрд╕реЛрдиреЛрд╡ ,

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

@cbazza рдореИрдВ рдлрд╝реНрд▓рдЯрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдареАрдХ рдпрд╣реА рдмрд╛рдд рдХрд╣ рд╕рдХрддрд╛ рдерд╛ред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдХреБрдЫ рд╕рдкреНрддрд╛рд╣ рдмрд┐рддрд╛рдПрдВ рдФрд░ рдЖрдк JSX рдХреЛ рдорд┐рд╕ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред

рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╣рдореЗрдВ рд╕рдм рдХреБрдЫ рдмрддрд╛рддреА рд╣реИред

рдЕрдм рддрдХ, +1 рд▓рдЧрднрдЧ рджреЛрдЧреБрдирд╛ -1

@escamoteur ,
рд╣рд╛рдВ, рдХрд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╣реА рдЙрдЪрд┐рдд рдХрдерди рд╣реИ рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рд╕реНрдкрдВрджрди рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рд╕рдордп рдмрд┐рддрд╛рдпрд╛ рд╣реИ рдФрд░ рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдбреАрдПрд╕рдПрдХреНрд╕ рдЗрд╕рдореЗрдВ рдХрд┐рддрдирд╛ рдореВрд▓реНрдп рдЬреЛрдбрд╝ рджреЗрдЧрд╛ред рдЬреИрд╕рд╛ рдХрд┐ @leedstyh рдиреЗ рджреЗрдЦрд╛ рд╣реИ, DSX рдХреЗ рдкреНрд░рд╢рдВрд╕рдХ рд▓рдЧрднрдЧ 2-рд╕реЗ-1 рддрдХ рджреМрдбрд╝ рдХрд╛ рдиреЗрддреГрддреНрд╡ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдХрд┐ рдЗрд╕ рдордВрдЪ рдХреЗ рд▓реЛрдЧреЛрдВ рдХреЛ рд╕реНрдкрдВрджрди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдмрд╣реБрдд рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рд╣реИред

рдореЗрд░рд╛ рдПрдХ рд╕рд╡рд╛рд▓ рд╣реИ:

DSX рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рд╣рдо рдкрд░реЛрдХреНрд╖ рд░реВрдк рд╕реЗ рдпрд╣ рдорд╛рди рд▓реЗрддреЗ рд╣реИрдВ рдХрд┐ рдиреЗрд╕реНрдЯреЗрдб рдмрдЪреНрдЪреЗ/рдмрдЪреНрдЪреЗ рд╡рд┐рдЬреЗрдЯ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣реИрдВред рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рд╣рдо рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдпрд╣ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдиреЗрд╕реНрдЯреЗрдб рдмрдЪреНрдЪреЗ/рдмрдЪреНрдЪреЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрдк-рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡рд┐рдЬреЗрдЯ рд╣реЛрдВ?

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдореЗрд░реЗ рдХрд╕реНрдЯрдо рд╡рд┐рдЬреЗрдЯ рдХреЗ рдмрдЪреНрдЪреЗ рдХреЗрд╡рд▓ рдХрдВрдЯреЗрдирд░ рдХреА рдПрдХ рд╕реВрдЪреА рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ, рддреЛ рдореИрдВ List<Container> рд╡рд╛рд▓реЗ рдмрдЪреНрдЪреЛрдВ рдХреЛ рдПрдиреЛрдЯреЗрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ рдЬреИрд╕реЗ рд╣реА рдореИрдВ рдХрдВрдЯреЗрдирд░ рд╕реЗ рдХреБрдЫ рднреА рдЕрд▓рдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдЖрдИрдбреАрдИ рдПрдХ рддреНрд░реБрдЯрд┐ рджреЗрдЧрд╛ред рдЬреИрд╕рд╛ рдХрд┐ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдбреАрдПрд╕рдПрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЗрд╕ рддрд░рд╣ рд╕реБрд░рдХреНрд╖рд┐рдд рдкреНрд░рдХрд╛рд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЬрдм рдРрдк рд╕рдВрдХрд▓рд┐рдд рд╣реЛ рддреЛ рд╣рдореЗрдВ рдХреБрдЫ рддреНрд░реБрдЯрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрдм рдореИрдВ рдЯрд╛рдЗрдк рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рддреЛ рддреНрд░реБрдЯрд┐ рдмрдврд╝ рдЬрд╛рддреА рд╣реИ, рдлрд┐рд░ рднреА рдПрдХ рдмреЗрд╣рддрд░ рдЕрдиреБрднрд╡ рд╣реЛрддрд╛ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдХрдо рд╕реЗ рдХрдо v1 рд░рд┐рд▓реАрдЬ рдХреЗ рдмрд╛рдж рдпреВрдЖрдИ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░ рдХрд┐рд╕реА рдХреЛ рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдФрд░ рд╕реНрдкрдВрджрди рдХреЗ рддрд░реАрдХреЗ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдордп рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рддрдм рд╣рдо рдЗрд╕ рдлреАрдЪрд░ рдХреЛ рдмреЗрд╣рддрд░ рддрд░реАрдХреЗ рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рдереЗред

@sandangel ,

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

рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рдирд╛рдорд╕реНрдерд╛рди рдкрд░ рд╕рд░рдгреА рдкреНрд░рдХрд╛рд░ рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╣реИред рдЬреИрд╕реЗ-рдЬреИрд╕реЗ рдирд╛рдо рд╕реНрдерд╛рди рдмрдбрд╝рд╛ рд╣реЛрддрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рд╣рдо 'рдмрдЪреНрдЪреЛрдВ' рдХреЗ рд▓рд┐рдП '*' рдХрд╛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд░реВрдк рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЙрджрд╛рд╣рд░рдг 2 рдореЗрдВ https://spark-heroku-dsx.herokuapp.com/index.html рдкрд░, рдпрджрд┐ рдХреНрд░рд┐рдпрд╛рдПрдБ рдбрд┐рдлрд╝реЙрд▓реНрдЯ 'рд╡рд┐рдЬреЗрдЯ' рдХреЗ рдмрдЬрд╛рдп 'рдХрдВрдЯреЗрдирд░' рдХреА рдПрдХ рд╕рд░рдгреА рд╣реЛрддреА рд╣реИрдВ, рддреЛ рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА:

        <actions:children:Container>
            <IconButton 
                icon={new Icon(Icons.search)}
                tooltip='Search'
                onPress={null}
            />
        </actions:children:Container>
        <actions:*:Container>
            <IconButton 
                icon={new Icon(Icons.search)}
                tooltip='Search'
                onPress={null}
            />
        </actions:*:Container>

рд╣рд╛рдп @cbazza , рдЖрдкрдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

рдореИрдВ рдЖрдкрдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪ рд░рд╣рд╛ рд╣реВрдВред рдХреНрдпрд╛ рд╣рдо w3рд╢реВрд▓-рдПрдХреНрд╕рдПрдордПрд▓ рдиреЗрдорд╕реНрдкреЗрд╕ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдПрдХреНрд╕рдПрдордПрд▓ рдиреЗрдорд╕реНрдкреЗрд╕ рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ?

рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ XML рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдирд╛рдордХрд░рдг рд╡рд┐рд░реЛрдз рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдиреЗрдорд╕реНрдкреЗрд╕ рдХрд╛ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рддреЛ рдЬрдм рдХреЛрдИ рдЙрдкрд░реЛрдХреНрдд рдПрдХреНрд╕рдПрдордПрд▓ рдкрдврд╝рддрд╛ рд╣реИ, рддреЛ рд╡реЗ рд╕реЛрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдирд╛рдорд╕реНрдерд╛рди 'рдХреНрд░рд┐рдпрд╛рдУрдВ' рдХреЗ рдирд╛рдорд╕реНрдерд╛рди 'рдмрдЪреНрдЪреЛрдВ' рдХреЗ рддрд╣рдд рдПрдХ рдХрдВрдЯреЗрдирд░ рдЯреИрдЧ рдШреЛрд╖рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рди рдХрд┐ рдЖрдк рд╣рд░ рдиреЗрд╕реНрдЯреЗрдб рдмрдЪреНрдЪреЛрдВ рдХреЛ рдХрдВрдЯреЗрдирд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдореБрдЭреЗ рднреНрд░рдорд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрдм рдореИрдВрдиреЗ рдкрд╣рд▓реА рдмрд╛рд░ рдЙрдкрд░реЛрдХреНрдд рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЛ рдкрдврд╝реЗ рдмрд┐рдирд╛ рдЖрдкрдХреЗ рдкреНрд░рд╕реНрддрд╛рд╡ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдХреЛ рдкрдврд╝рд╛ред

рдХреНрдпрд╛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреБрдЫ рдмреЗрд╣рддрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?

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

рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рд╕реЗ рдЖрддреЗ рд╣реБрдП, рдореИрдВрдиреЗ рдкрд╣рд▓реЗ JSX рдЬреИрд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛, рдФрд░ рдиреЗрд╕реНрдЯреЗрдб рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдореИрдВ OOP рдХрд╛ рдЖрдирдВрдж рд▓реЗрдирд╛ рд╢реБрд░реВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рд╕рдм рдХреБрдЫ рдПрдХ рд╡рд╕реНрддреБ рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ!

рд░рд┐рдПрдХреНрдЯ-рдиреЗрдЯрд┐рд╡ рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЗрд╕ рдкреНрд▓рдЧрдЗрди рдХреА рдЕрддреНрдпрдзрд┐рдХ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдБ! https://marketplace.visualstudio.com/items?itemName=CoenraadS.bracket-pair-colorizer

@clarktank
рдХреНрдпрд╛ рдЖрдк рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ (рдЬреЗрдПрд╕рдПрдХреНрд╕), рд╕реНрдкрдВрджрди (рдУрдУрдкреА), рдФрд░ рдПрдХ рд╕реЗ рджреВрд╕рд░реЗ рддрдХ рдЕрдкрдиреА рдпрд╛рддреНрд░рд╛ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

@cbazza рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдгреАрдп рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдПрдХреНрд╕рдПрдордПрд▓ рд╕реЗрдореЗрдиреНрдЯрд┐рдХреНрд╕ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЬреИрд╕рд╛ рдХрд┐ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдгреАрдп рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдФрд░ рдПрдХреНрд╕рдПрдордПрд▓ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рдмреАрдЪ рдХреЛрдИ рд╕рдВрдШрд░реНрд╖ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рд╣реИред

рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рд╛рдорд╛рдиреНрдп рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рд╣реИред
рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдРрд╕рд╛ рдХреБрдЫ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ:

<children<Container>>
  <Container/>
</children>

рд▓реЗрдХрд┐рди рдлрд┐рд░ рд╕реЗ, рд╕рд╛рдорд╛рдиреНрдп рдШрдЯрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рдВрдкрддреНрддрд┐ рдЗрдирдкреБрдЯ рдХреА рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдЗрд╕ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЙрдкрд░реЛрдХреНрдд рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рд╕рд╣реА рдЕрд░реНрдердкреВрд░реНрдг рдЕрд░реНрде рд╣реИ рдпрд╛ рдирд╣реАрдВред

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

рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╣рдореЗрдВ рд╕рдм рдХреБрдЫ рдмрддрд╛рддреА рд╣реИред

рдЕрдм рддрдХ, +1 рд▓рдЧрднрдЧ рджреЛрдЧреБрдирд╛ -1

рдЗрд╕рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред

рдЙрди рд▓реЛрдЧреЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдЬреЛ рд╕рднреА рдлрд╝реНрд▓рдЯрд░ рдореБрджреНрджреЛрдВ рдХреЛ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ, рдЬреЛ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЙрддрд░рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА JSX рдХреЗ рдЕрднреНрдпрд╕реНрдд рд╣реИрдВ (рдФрд░ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрд╕рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ)ред рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ _рдЬреЛ рд▓реЛрдЧ JSX рдЬреИрд╕рд╛ рдЕрдиреБрднрд╡ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд╡реЗ рд╕рднреА рдореБрджреНрджреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рд╕реЗ рджреЛрдЧреБрдирд╛ -1_ред (+1 рд╡реЛрдЯ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдХрд╛ рдПрдХ рд╣рд┐рд╕реНрд╕рд╛ рдЗрдореНрд╣реЛ рдиреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрдкрдВрджрди рдХреА рдХреЛрд╢рд┐рд╢ рднреА рдирд╣реАрдВ рдХреА рд╣реИ)

@sandangel ,

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдгреАрдп рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдПрдХреНрд╕рдПрдордПрд▓ рд╕реЗрдореЗрдиреНрдЯрд┐рдХреНрд╕ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЬреИрд╕рд╛ рдХрд┐ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдгреАрдп рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдФрд░ рдПрдХреНрд╕рдПрдордПрд▓ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рдмреАрдЪ рдХреЛрдИ рд╕рдВрдШрд░реНрд╖ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рд╣реИред

рдЬрд╝рд░реВрд░, рд▓реЗрдХрд┐рди JSX рдиреЗрдорд╕реНрдкреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд░реБрдЪрд┐ рдХреА XML рд╡рд┐рд╢реЗрд╖рддрд╛ рдирд╣реАрдВ рд╣реИред

<children<Container>>
  <Container/>
</children>

рдЪреВрдВрдХрд┐ рдЖрдкрдиреЗ 'рдмрдЪреНрдЪреЛрдВ' рдХреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЯреИрдЧ рдореЗрдВ рдХрд╛рд░реНрд░рд╡рд╛рдИ рд╕реЗ рдмрд╛рд╣рд░ рдХрд░ рджрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд░рд┐рдПрдХреНрдЯ рдХреЗ рдирдП рдлреНрд░реИрдЧрдореЗрдВрдЯ рдЯреИрдЧ рдХреА рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реИред рдпрд╣ рд╡рд╛рдЪрд╛рд▓рддрд╛ рдФрд░ рд╕рдВрдХреНрд╖рд┐рдкреНрддрддрд╛ рдХреЗ рдмреАрдЪ рдПрдХ рд╕рдВрддреБрд▓рди рд╣реИ рдЬреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╣реИред

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

рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдлрд╝реНрд▓рдЯрд░ рдХреЛрдб рдореЗрдВ UI рдШреЛрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЙрд╕рдореЗрдВ рдХреБрдЫ рднреА рдирдпрд╛ рдирд╣реАрдВ рд╣реИ, рд╢рд╛рдпрдж DSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрдкрдХреЗ рд▓рд┐рдП рдЕрдкреНрд░рд╛рдХреГрддрд┐рдХ / рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ рд▓реЗрдХрд┐рди JSX рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред JSX/DSX рд╕реНрдкрдВрджрди рдХреЗ рд▓рд┐рдП рдПрдХрджрдо рд╕рд╣реА рд╣реИ, рдпрд╣ рдПрдХ рджрд╕реНрддрд╛рдиреЗ рдХреА рддрд░рд╣ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИ рдФрд░ рдЕрдЧрд░ рдЖрдкрдХреЛ рджрд╕реНрддрд╛рдиреЗ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИрдВ рддреЛ рдирдВрдЧреЗ рд╣рд╛рде рдЬрд╛рдПрдВ;)

@ рдП14рдПрди ,

рдЗрд╕рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред

рдпрд╣ рдЬрд░реБрд░ рдХрд░рддрд╛ рд╣реИ !!! рдЖрдк 'рдорд╣рд╕реВрд╕', 'рд╕реЛрдЪ', 'рд╕рдВрджрд┐рдЧреНрдз', 'рдЗрдореНрд╣реЛ', 'рд░рд╛рдп' рдХреЗ рд╕рд╛рде рдмрд╣рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдпрд╣ рдбреЗрдЯрд╛ рд╣реИ, рдПрдХ рдареЛрд╕ рдбреЗрдЯрд╛ рдмрд┐рдВрджреБ рд╣реИред рдпрджрд┐ рдбреЗрдЯрд╛ рдмреЗрдХрд╛рд░ рд╣реИ рддреЛ рдЗрд╕реЗ рдПрдХрддреНрд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛ рдмреЗрдХрд╛рд░ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЖрдкрдХреА рддрд╕реНрд╡реАрд░ рдХреЛ рдЪрд┐рддреНрд░рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

@cbazza рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЬрдм рд╣рдо рдмрдЪреНрдЪреЗ/рдмрдЪреНрдЪреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдк-рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡рд┐рдЬреЗрдЯ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдКрдкрд░ рджрд┐рдП рдЧрдП рдкреНрд░рд╢реНрди рдХрд╛ рдЙрддреНрддрд░ рджреЗрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдбрд╛рд░реНрдЯ рдХреЛрдб рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмреЗрд╣рддрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред

DSX XML рдирд╣реАрдВ рд╣реИ, рдпрд╣ XML рдЬреИрд╕рд╛ рд╣реИ рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ XML рд╢рдмреНрджрд╛рд░реНрде рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ

рдЬрд╝рд░реВрд░, рд▓реЗрдХрд┐рди JSX рдиреЗрдорд╕реНрдкреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд░реБрдЪрд┐ рдХреА XML рд╡рд┐рд╢реЗрд╖рддрд╛ рдирд╣реАрдВ рд╣реИред

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдКрдкрд░ рдЖрдкрдХреА рдХреБрдЫ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдкрдврд╝реА рд╣реИрдВ рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЬреЗрдПрд╕рдПрдХреНрд╕/рдПрдХреНрд╕рдПрдордПрд▓ рдиреЛрдб рдХреЛ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИред рд╡реИрд╕реЗ рднреА, рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдирд╛рдорд╕реНрдерд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрджрд░реНрд╢ рдирд╣реАрдВ рд╣реИред

рдмрд╕ рддреБрд▓рдирд╛ рдХрд░реЗрдВ

<actions:children:Container>

</actions:children:Container>

рддрдерд╛

actions: <Container>[]

рд╡рд╛рдХреНрдп - рд╡рд┐рдиреНрдпрд╛рд╕ред

@sandangel ,

рд╣рд╛рдВ, рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдЯреИрдЧрд┐рдВрдЧ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЕрдзрд┐рдХ рдХреНрд░рд┐рдпрд╛рддреНрдордХ рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдмрдЪреНрдЪреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд░реВрдк '*' рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИред рд╡реИрд╕реЗ рднреА, рдпрд╣ рдорд╛рдорд▓рд╛ рдЕрдкрд╡рд╛рдж рд╣реИ рди рдХрд┐ рдирд┐рдпрдоред рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдордп рдЖрдкрдХреЛ 'рдмрдЪреНрдЪреЛрдВ' рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рдХреЗрд╡рд▓ 'рдХрдВрдЯреЗрдирд░' рдХреЛ рдЫреЛрдбрд╝ рджреЗрдВ; рд▓реЗрдХрд┐рди рд╕рднреА рд╕рдВрднрд╛рд╡рд┐рдд рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЛ рдХрд╡рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

@a14n рд╡реЛрдЯ рд╣реА рд╡реЛрдЯ рд╣реИ, рдЗрд╕рдХрд╛ рдкрдХреНрдХрд╛ рдорддрд▓рдм рд╣реИред

рдореИрдВ рдЖрдкрдХреА рднрд╛рд╡рдирд╛ рдХрд╛ рд╕рдореНрдорд╛рди рдХрд░рддрд╛ рд╣реВрдВ, рд╢рд╛рдпрдж рдпрд╣ рд╕рдЪ рд╣реИред рд▓реЗрдХрд┐рди рд░рд┐рд╡рд░реНрд╕ рд░реЗрд╢рд┐рдпреЛ (1 рд╕реЗ 2) рдХреЗ рд╕рд╛рде рднреА, рдЗрд╕рдХрд╛ рдорддрд▓рдм рдЕрднреА рднреА 33% рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдзрд╛рд░ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ 33% рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ?

рдЬреЛ рд▓реЛрдЧ JSX рдЬреИрд╕рд╛ рдЕрдиреБрднрд╡ рдЪрд╛рд╣рддреЗ рд╣реИрдВ

рд╣рд╛рдБ, рдХреБрдЫ рд▓реЛрдЧ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рднреА рд╣реИ рдХрд┐ _JSX рдХреА рддрд░рд╣ рдХреА рдХрдореА рд▓реЛрдЧреЛрдВ рдХреЛ рд╕реНрдкрдВрджрди рдЪреБрдирдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рдХрд╛ рдПрдХ рдХрд╛рд░рдг рд╣реИред

рд╕реНрдкрдВрджрди рдХрд╛ рд▓рдХреНрд╖реНрдп рдЕрдзрд┐рдХ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╣реИ, рди рдХреЗрд╡рд▓ рд╕рднреА рдореБрджреНрджреЛрдВ рдХреЛ рдкрдврд╝рддреЗ рд╣реИрдВред

@jstansbe
рдореИрдВ рдПрдХ рд╕реНрд╡-рд╕рд┐рдЦрд╛рдпрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╣реВрдВ, рдФрд░ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕реНрд╡-рд╕рд┐рдЦрд╛рдП рдЧрдП рд▓реЛрдЧреЛрдВ рдХреА рддрд░рд╣, рдореИрдВрдиреЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХреАред
рдлрд┐рд░ рдореИрдВрдиреЗ рд░рд┐рдПрдХреНрдЯ рдФрд░ рд░рд┐рдПрдХреНрдЯ-рдиреЗрдЯрд┐рд╡ рд╕реАрдЦрдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рд╛рд▓ рдХреЗ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ ES6 рдХреЗ рдмрд╛рдж, OOP рд╢реИрд▓реА рдХреЛ Javascript рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛ред

рдЗрд╕рд▓рд┐рдП рдореЗрд░реЗ рдЬреИрд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреА рдУрдУрдкреА рд╢реИрд▓реА рдХреА рдЖрджрдд рдирд╣реАрдВ рд╣реИред рднрд▓реЗ рд╣реА рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ Component рд╕реНрдкрдВрджрди рдореЗрдВ Widgets рдХреА рддрд░рд╣ рд╣реА рдХрдХреНрд╖рд╛рдПрдВ рд╣реЛрдВред

JSX рддрд░рд╣ рдХрд╛ рд╢реБрджреНрдз OOP рдЪрд┐рддреНрд░ рдЫреБрдкрд╛рддрд╛ рд╣реИред рдореВрд▓ рд░реВрдк рд╕реЗ, рдпрд╣ рдЫреБрдкрд╛рддрд╛ рд╣реИ рдХрд┐ рд╣реБрдб рдХреЗ рдиреАрдЪреЗ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИред рдиреЛрдЯ: рд░рд┐рдПрдХреНрдЯ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ html рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ JSX рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдмреАрдЪ рдЗрддрдирд╛ рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИред

рдирд┐рдЬреА рддреМрд░ рдкрд░, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╢реБрджреНрдз рдУрдУрдкреА рдмрдбрд╝реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

@рдХреНрд▓рд╛рд░реНрдХрдЯреИрдВрдХ ,

рдХрдВрдкреНрдпреВрдЯрд░ рднрд╛рд╖рд╛рдУрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рддреЗ рд╕рдордп рдЖрдкрдХреЛ рдирд┐рдореНрди рдмрд╛рддреЛрдВ рдХреА рдЬрд╛рдирдХрд╛рд░реА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП:
(1) рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕ - рд╡рд░реНрдг рдФрд░ рд╢рдмреНрдж рдЬреЛ рднрд╛рд╖рд╛ рдмрдирд╛рддреЗ рд╣реИрдВ
(2) рд╢рдмреНрджрд╛рд░реНрде - рдЙрди рд╡рд░реНрдгреЛрдВ рдФрд░ рд╢рдмреНрджреЛрдВ рдХрд╛ рдЕрд░реНрде

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрдИ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдирд┐рдореНрди рдХреА рддрд░рд╣ рджрд┐рдЦрддреА рд╣реИрдВ (рдЕрд░реНрдерд╛рдд рдирд┐рдореНрди рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реИ):

a = someFunction(param1, param2)

рдЕрдм рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП рдХрд┐ рдХреЛрдИ рдЕрдиреНрдп рднрд╛рд╖рд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рдХреЗ рд▓рд┐рдП рдЧреЛрд▓ рдХреЛрд╖реНрдардХ рдХреЗ рдмрдЬрд╛рдп рд╡рд░реНрдЧ рдХреЛрд╖реНрдардХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреА рд╣реИ; рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреА рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:

a = someFunction[param1, param2]

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

JSX рддрд░рд╣ рдХрд╛ рд╢реБрджреНрдз OOP рдЪрд┐рддреНрд░ рдЫреБрдкрд╛рддрд╛ рд╣реИред рдореВрд▓ рд░реВрдк рд╕реЗ, рдпрд╣ рдЫреБрдкрд╛рддрд╛ рд╣реИ рдХрд┐ рд╣реБрдб рдХреЗ рдиреАрдЪреЗ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИред

рдХрддрдИ рд╕рдЪ рдирд╣реАрдВ рд╣реИред рдЬреЗрдПрд╕рдПрдХреНрд╕/рдбреАрдПрд╕рдПрдХреНрд╕ рдмрд┐рд▓реНрдХреБрд▓ рдПрдХ рд╣реА рдЪреАрдЬрд╝ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИ (рдЕрд░реНрдерд╢рд╛рд╕реНрддреНрд░ рд╕рдорд╛рди рд╣реИрдВ)ред JSX рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, XML рдЯреИрдЧ рдХреЗрд╡рд▓ рд░рд┐рдПрдХреНрдЯ рдХрдВрдкреЛрдиреЗрдВрдЯреНрд╕ рдмрдирд╛рддреЗ рд╣реИрдВ (рдЬреИрд╕реЗ рдЖрдк рдЗрд╕реЗ рдкреНрдпреЛрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ)ред рдбреАрдПрд╕рдПрдХреНрд╕ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдПрдХреНрд╕рдПрдордПрд▓ рдЯреИрдЧ рд╕рд┐рд░реНрдл рд╕реНрдкрдВрджрди рд╡рд┐рдЬреЗрдЯ рдмрдирд╛рддреЗ рд╣реИрдВ (рдЬреИрд╕реЗ рдЖрдк рдЗрд╕реЗ рд╢реБрджреНрдз рдбрд╛рд░реНрдЯ рдореЗрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ)ред рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЕрд▓рдЧ рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рд╡рд╣реА рдЪреАрдЬрд╝ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╣реБрдб рдХреЗ рдиреАрдЪреЗ рд╕рдорд╛рди рд╣реИред

рдиреЛрдЯ: рд░рд┐рдПрдХреНрдЯ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ html рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ JSX рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдмреАрдЪ рдЗрддрдирд╛ рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИред

JSX рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдШрдЯрдХ рдЯреНрд░реА рдкрджрд╛рдиреБрдХреНрд░рдореЛрдВ рдХреЛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╢рд╛рдирджрд╛рд░ рддрд░реАрдХрд╛ рд╣реИ, рдЪрд╛рд╣реЗ рд╡рд╣ рд╡реЗрдм, рдореЛрдмрд╛рдЗрд▓ рдпрд╛ рдХрд┐рд╕реА UI рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╣реЛред рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдХреЛрдб рдореЗрдВ рд╕реВрдЪрдирд╛ рдЖрдкрдХреЛ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдбреНрд░реЙрдкрдбрд╛рдЙрди рдШрдЯрдХ рд╡реЗрдм рдХреЗ рд▓рд┐рдП рд╣реИ рдпрд╛ рдореЛрдмрд╛рдЗрд▓ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдПред

https://facebook.github.io/jsx/

// Using JSX to express UI components.
var dropdown =
  <Dropdown>
    A dropdown list
    <Menu>
      <MenuItem>Do Something</MenuItem>
      <MenuItem>Do Something Fun!</MenuItem>
      <MenuItem>Do Something Else</MenuItem>
    </Menu>
  </Dropdown>;

render(dropdown);

рдирд┐рдЬреА рддреМрд░ рдкрд░, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╢реБрджреНрдз рдУрдУрдкреА рдмрдбрд╝реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

рд╡рд╣ рднреА рдХреИрд╕реЗ? (рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдЬреЗрдПрд╕рдПрдХреНрд╕/рдбреАрдПрд╕рдПрдХреНрд╕ рдпрд╛ рд╢реБрджреНрдз рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ/рдбрд╛рд░реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣реБрдб рдХреЗ рдиреАрдЪреЗ рдмрд┐рд▓реНрдХреБрд▓ рд╡рд╣реА рдЪреАрдЬрд╝ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ)ред

@cbazza

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

рдмрдбрд╝реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ, JSX рднрд╛рд░реА рдиреЗрд╕реНрдЯреЗрдб рд╡рд╕реНрддреБрдУрдВ рдХреА рддрд░рд╣ рдмрджрд╕реВрд░рдд рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рд╡рд╛рдХреНрдпрд╛рддреНрдордХ рд░реВрдк рд╕реЗ, рдореИрдВ рдПрдХ рдФрд░ рд╢реИрд▓реА рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рд╕реБрд╕рдВрдЧрдд рд░рд╣рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдЬреЛ рдХрд┐ рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╣реЛ рд╕рдХрддреА рд╣реИред

@рдХреНрд▓рд╛рд░реНрдХрдЯреИрдВрдХ ,

рдмрдбрд╝реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ, JSX рднрд╛рд░реА рдиреЗрд╕реНрдЯреЗрдб рд╡рд╕реНрддреБрдУрдВ рдХреА рддрд░рд╣ рдмрджрд╕реВрд░рдд рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рд╡рд╛рдХреНрдпрд╛рддреНрдордХ рд░реВрдк рд╕реЗ, рдореИрдВ рдПрдХ рдФрд░ рд╢реИрд▓реА рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рд╕реБрд╕рдВрдЧрдд рд░рд╣рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдЬреЛ рдХрд┐ рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╣реЛ рд╕рдХрддреА рд╣реИред

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

(рдореИрдВ рдкрд╛рда рдХреА рджреАрд╡рд╛рд░ рдХреЗ рд▓рд┐рдП рдЕрдЧреНрд░рд┐рдо рд░реВрдк рд╕реЗ рдХреНрд╖рдорд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред)

рдХрд┐рд╕реА рдРрд╕реЗ рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдЬрд┐рд╕рдиреЗ рд░рд┐рдПрдХреНрдЯ-рдиреЗрдЯрд┐рд╡ рдпрд╛ рд╕реНрдкрдВрджрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕реНрд░реЛрдд рдорд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ рдХрдЪреНрдЪрд╛ рдбрд╛рд░реНрдЯ рдпрд╛ JSX / DSX "рдмреЗрд╣рддрд░" рд╣реИ, рдпрд╣ рдореБрджреНрджрд╛ рдзрд╛рдЧрд╛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдХрд░реНрд╖рдХ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреБрдЫ рдЪреАрдЬреЗрдВ рд╣реИрдВ рдЬреЛ рдореИрдВ рдЕрдкрдиреЗ $0.02 рдХреЛ рдиреАрдЪреЗ рд░рдЦрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред

рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЦреБрдж рдХреЛ рд╡рд┐рднрд┐рдиреНрди рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдЗрд╕ рдмрд╛рдд рд╕реЗ рд╕рд╣рдордд рдкрд╛рддрд╛ рд╣реВрдВ рдХрд┐ JSX рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рд╣реИ рдФрд░ рдпрд╣ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдн рдкрд╣реБрдВрдЪрд╛рддрд╛ рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг, JSX рдХреЛ "рдбрд╛рдпрдирд╛рдорд┐рдХ HTML" рдХреЗ рд░реВрдк рдореЗрдВ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬрд┐рд╕реЗ рдореМрдЬреВрджрд╛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛрдб рдореЗрдВ рдЗрдирд▓рд╛рдЗрди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рдерд╛ред рдЬреЗрдПрд╕-рдЖрдзрд╛рд░рд┐рдд рд╡реЗрдм рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдЬреИрд╕реЗ рд░рд┐рдПрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЕрдирд┐рд╡рд╛рд░реНрдп рд╣реИ рдХрд┐ рдпрд╣ рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдИрд╢реНрд╡рд░-рднрдпрд╛рдирдХ рджреЗрд╢реА рддрд░реАрдХреЗ (рдпрд╛ рдПрдХрдорд╛рддреНрд░-рдереЛрдбрд╝рд╛-рдмреЗрд╣рддрд░ jQuery рддрд░реАрдХрд╛) рдХреЗ рд╕рд╛рде рдХреБрд╢реНрддреА рдХрд┐рдП рдмрд┐рдирд╛ рдбреАрдУрдПрдо рдХреЗ рд╕рд╛рде рд╕рдлрд╛рдИ рдФрд░ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдкрдиреЗ рд╕реНрд╡рднрд╛рд╡ рд╕реЗ, JSX UI рд╡рд┐рдХрд╛рд╕ рдХреЛ рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдбреЗрдЯрд╛ рд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рдЕрд▓рдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдПрдХ рд╕реБрд╡реНрдпрд╡рд╕реНрдерд┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрддрд╛ рд╣реИред рдЙрд╕ рдорд╛рд╣реМрд▓ рдореЗрдВ, JSX рдЕрдзрд┐рдХ рдЙрддреНрдкрд╛рджрдХрддрд╛ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдХрд░рдг рд╣реИ, рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рд╕рд╛рде рдмрд╣рд╕ рдХрд░рдирд╛ рд▓рдЧрднрдЧ рдЕрд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред

рдпрд╣ рдкреИрд░рд╛рдЧреНрд░рд╛рдл рд░рд┐рдПрдХреНрдЯ-рдиреЗрдЯрд┐рд╡ рд╕реЗ рдХреИрд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рднрд▓реЗ рд╣реА рдпрд╣ рдПрдХ рдореЛрдмрд╛рдЗрд▓-рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рд╣реИ, рдпрд╣ рд╕реАрдзреЗ рд░рд┐рдПрдХреНрдЯ рд╕реЗ рдЙрддрд░рд╛ рд╣реИред рдЬреИрд╕реЗ, рд▓рдЧрднрдЧ рд╕рднреА рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдФрд░ рдкреНрд░рддрд┐рдорд╛рди рдЕрднреА рднреА рдореВрд▓ рд░реВрдк рд╕реЗ рд╡реЗрдм-рд╡рд┐рдХрд╛рд╕ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдХрд░ рдмрдирд╛рдП рдЧрдП рдереЗред рд╡рд╣ рдбрд┐рдЬрд╝рд╛рдЗрди рджреНрд╡рд╛рд░рд╛ рд╣реИ - RN рдХреА рд╕рдВрдкреВрд░реНрдг shtick рдпрд╣ рд╣реИ рдХрд┐ рдЖрдк "React рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдореЛрдмрд╛рдЗрд▓ рдРрдк рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ", рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рд╡реЗрдм рд╡рд┐рдХрд╛рд╕ рдХреА рддрд░рд╣ рдорд╣рд╕реВрд╕ рдХрд░рдирд╛ _supposed_ рд╣реИред RN рдРрдкреНрд╕ рднреА рдореБрдЦреНрдп рд░реВрдк рд╕реЗ Javascript рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП JSX рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд╣реИред JSX рд▓рдЧрднрдЧ рдЙрдиреНрд╣реАрдВ рдХрд╛рд░рдгреЛрдВ рд╕реЗ RN рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ рдЬреЛ рд╡реЗрдм рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред (рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реЛрдЪрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдПрдХ рдмрдбрд╝рд╛ рдХрд╛рд░рдг рд╣реИ рдХрд┐, RN рдореЗрдВ, рдХрдо рд╕реЗ рдХрдо, JSX рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдореВрд▓ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдмрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред RN рд╕реНрд╡рдпрдВ рд╣реА рдПрдХ рд╡реЗрдм рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреА рддрд░рд╣ _feels_ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдзрд┐рдХ рд╡реЗрдм-рдкреНрд░рд╛рдХреГрддрд┐рдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдкреНрд░рдореБрдЦ рдмрдирдиреЗ рдХреЗ рд▓рд┐рдПред)

рджреВрд╕рд░реА рдУрд░, рд╕реНрдкрдВрджрди рдХрд╛ рдРрд╕рд╛ рдХреЛрдИ рдбрд┐рдЬрд╝рд╛рдЗрди рджрд░реНрд╢рди рдирд╣реАрдВ рд╣реИред рдпрд╣ рдПрдХ рд╡рд┐рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рджреЗрд╢реА рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╕рдорд╛рдзрд╛рди рд╣реЛрдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд╣реИ, рдФрд░ рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд░рд┐рдПрдХреНрдЯ-рдиреЗрдЯрд┐рд╡ рд╕реЗ рдкреНрд░реЗрд░рд┐рдд рдерд╛, рдпрд╣ рдПрдХ рд╡реЗрдм рдРрдк рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рджреЗрд╢реА рдбреЗрд╕реНрдХрдЯреЙрдк рдпрд╛ рдореЛрдмрд╛рдЗрд▓ рдРрдк рдХреА рддрд░рд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд▓рд┐рдЦрддрд╛ рд╣реИред рдпрд╣ рдбрд╛рд░реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рднреА рдЪрд▓рддрд╛ рд╣реИ, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдирд╣реАрдВ, рдЬреЛ рдХрд┐ JSX рдЬреИрд╕реА рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдХреЛ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдПрдХ рдкреНрд░рдореБрдЦ рд╡рд┐рдЪрд╛рд░ рд╣реИред рдПрдХ рдХреЗ рд▓рд┐рдП, рдЬрдмрдХрд┐ JS DOM рдлрд╝рдВрдХреНрд╢рди рдмреБрд░реА рддрд░рд╣ рд╕реЗ рд╡рд░реНрдмреЛрдЬрд╝ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдФрд░ JS рднрд╛рд╖рд╛ рдХреЗ рдХрд╛рд░рдг рджреЛрдиреЛрдВ), рдбрд╛рд░реНрдЯ рдПрдХ рднрд╛рд╖рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрд╡рдЪреНрдЫ UI-рдШреЛрд╖рдгрд╛рддреНрдордХ рдХреЛрдб рдХреА рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рдлрд╝реНрд▓рдЯрд░ рдЕрдзрд┐рдХрд╛рдВрд╢ рднрд╛рдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдпреВрдЖрдИ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░реНрд╕ рдХреЛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд░рдЦрддреЗ рд╣реБрдПред рджреВрд╕рд░реЗ рдХреЗ рд▓рд┐рдП ( рдЬреИрд╕рд╛ рдХрд┐ @sandangel рдиреЗ рдмрддрд╛рдпрд╛ ) рдбрд╛рд░реНрдЯ рдПрдХ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХреА рдЧрдИ рднрд╛рд╖рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП JSX рдХреА рдкреНрд░рдХреГрддрд┐ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХреА рдЧрдИ рднрд╛рд╖рд╛ рдЬреИрд╕реЗ JS рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рд░реБрдХрд╛рд╡рдЯреЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реА рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ UI рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХреЛ рдПрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╡рд┐рдЬреЗрдЯ, рдЬрд┐рд╕рдХрд╛ рдПрдХрдорд╛рддреНрд░ рд╕рдорд╛рдзрд╛рди рд╡рд░реНрдмреЛрд╕рд┐рдЯреА рдореЗрдВ рдЬреБрдбрд╝ рдЬрд╛рддрд╛ рд╣реИред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдпрд╣ рдПрдХ рд╕рдорд╛рдзрд╛рди рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ, рдЬреЛ рд╕рдордп рдХреЗ рд╕рд╛рде рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдПрдХ рдбреАрдПрд╕рдПрд▓ рдореЗрдВ рдкрд░рд┐рдгрдд рд╣реЛрдЧрд╛ рдЬреЛ рдлреВрд▓рд╛ рд╣реБрдЖ рд╣реЛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдмрдирд╛рдП рд░рдЦрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рдПрдХ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдирд┐рд╣рд┐рдд рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреА рдмрдврд╝рддреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реЛрдирд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЗрд░рд╛рджрд╛ рдирд╣реАрдВ рдерд╛ред рдХреЗ рд▓рд┐рдП рдЗрд╕реНрддреЗрдорд╛рд▓ рд╣реЛрддрд╛ рд╣реИред

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

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

рдЕрдм рдпрд╣ рдХрд╣рд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдЬрдмрдХрд┐ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ DSX рдХреЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рд╕рдорд░реНрдерд┐рдд рд╣реЛрдиреЗ рд╕реЗ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реВрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ _some_ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдПрдХ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ UI рдкреНрд░рд╛рд░реВрдк рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЬреИрд╕рд╛ рдХрд┐ @birkir рдиреЗ рдмрддрд╛рдпрд╛ , рд▓рдЧрднрдЧ рд╣рд░ рдкреНрд░рдореБрдЦ рджреЗрд╢реА UI рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо, рдЪрд╛рд╣реЗ рд╡рд╣ рдбреЗрд╕реНрдХрдЯреЙрдк рд╣реЛ рдпрд╛ рдореЛрдмрд╛рдЗрд▓, рдореЗрдВ рдкреНрд░рддреНрдпрдХреНрд╖ рдХреЛрдб-рдЖрдзрд╛рд░рд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдПрдХ UI рдкреНрд░рд╛рд░реВрдк рд╣реЛрддрд╛ рд╣реИ (рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡реИрд╕реЗ рднреА рдХреЛрдб-рдЖрдзрд╛рд░рд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг рдореЗрдВ рдкреВрд░реНрд╡-рд╕рдВрд╕рд╛рдзрд┐рдд рд╣реЛрддреЗ рд╣реИрдВ)ред рддрд░реНрдХ рдлрд╛рдЗрд▓реЛрдВ рд╕реЗ рдЕрд▓рдЧ рдпреВрдЖрдИ рдлрд╛рдЗрд▓реЗрдВ рд╣рдореЗрд╢рд╛ рдПрдорд╡реАрд╡реАрдПрдо рдкреИрдЯрд░реНрди рдХреЛ рдЕрдкрдирд╛рдиреЗ рдХрд╛ рдЕрдиреБрд╢рдВрд╕рд┐рдд рддрд░реАрдХрд╛ рд░рд╣рд╛ рд╣реИ (рдЬреЛ рд╕рдВрдпреЛрдЧрд╡рд╢, рдПрдХ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬрд┐рд╕рдиреЗ рдореБрдЭреЗ рд╣рдореЗрд╢рд╛ рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдкрд░реЗрд╢рд╛рди рдХрд┐рдпрд╛ рд╣реИ)ред рдЗрд╕рд▓рд┐рдП, рдореИрдВ рдЬреЛ рддрд░реНрдХ рджреВрдВрдЧрд╛, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдлрд╝реНрд▓рдЯрд░ рдореЗрдВ рдХреБрдЫ рд╕рдорд╛рди рд╣реИ - рдЗрдирд▓рд╛рдЗрди рдпреВрдЖрдИ рдбреАрдПрд╕рдПрд▓ рдкреНрд░рд╛рд░реВрдк рдХреЗ рдмрдЬрд╛рдп, рдЗрд╕рдХрд╛ рдПрдХ рдЕрд▓рдЧ рдпреВрдЖрдИ рдкреНрд░рд╛рд░реВрдк рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рд╕рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдбрд╛рд░реНрдЯ рдХреЛрдб рд╕реЗ рджреВрд░ рдЕрдкрдиреА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬрд╛рдирд╛ рд╣реИред

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

рдПрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛/рдЖрд░рдПрди рдФрд░ рдПрдХ рд╕реНрдкрдВрджрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреЛрдиреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ "рдбреАрдПрд╕рдПрдХреНрд╕" рдХреЗ рд╡рд┐рдЪрд╛рд░ рд╕реЗ рдмрд╣реБрдд рдЕрд╕рд╣рдордд рд╣реВрдВред

DSX рдХреБрдЫ рдирд╣реАрдВ рд▓рд╛рдПрдЧрд╛ред JSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ JS рд╕рд┐рдВрдЯреИрдХреНрд╕ рднрдпрд╛рдирдХ рд╣реИред рд▓реЗрдХрд┐рди рд╕реНрдкрдВрджрди рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╡рд┐рдЬреЗрдЯ рдмрдирд╛рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИред

рд╢рд╛рд╕реНрддреНрд░реАрдп:

Widget build(BuildContext context) {
  return Center(
    child: Text("foo"),
  );
}

рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд▓реАрдХ рд╕реЗ рд╣рдЯрдХрд░ рдкрдардиреАрдп, рд▓рд┐рдЦрдиреЗ рдореЗрдВ рдЖрд╕рд╛рди, рдЯрд╛рдЗрдк/рдЬреЗрдиреЗрд░рд┐рдХ рд╕рдВрдЧрдд, рдФрд░ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЕрдирд╛рд╡рд╢реНрдпрдХ рджреЛрд╣рд░рд╛рд╡ рдХреЗ рд╣реИред

рд╡рд░реНрддрдорд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд╕рд╛рде рд╕рдВрднрд╡рддрдГ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХрдорд╛рддреНрд░ рд╢рд┐рдХрд╛рдпрдд рд╣реЛ рд╕рдХрддреА рд╣реИ "рдпрд╣ рдЬрд╛рдирдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рдХрд┐ рд╡рд┐рдЬреЗрдЯ рдХрд╛ рд╕рдорд╛рдкрди рдХреЛрд╖реНрдардХ рдХрд╣рд╛рдВ рд╣реИ"

рд▓реЗрдХрд┐рди рдлрд┐рд░, рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддреМрд░ рдкрд░ рд╕рдорд░реНрдерд┐рдд IDEs рдХрд╛ рдбрд╛рд░реНрдЯ рдкреНрд▓рдЧрдЗрди рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред рддрд╛рдХрд┐ рдЬрдм рд╣рдо vscode рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рдХреЛрдб рдЦреЛрд▓рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рджреЗрдЦреЗрдВрдЧреЗ

Widget build(BuildContext context) {
  return Center(
    child: Text("foo"),
  ); // Center
}

"рдпреВрдЖрдИ рдХреЛрдб рд╕реЗ рдЖрдХрд╕реНрдорд┐рдХ рдХреЛрдб рдХреЛ рдЕрд▓рдЧ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ" рдХреЗ рд▓рд┐рдП, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд┐рдпрдо рд╕реНрдкрдВрджрди рдкрд░ рднреА рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВ:

рд╡рд┐рдЬреЗрдЯ рдпрд╛ рддреЛ рдЧреВрдВрдЧрд╛ рдпрд╛ рд╕реНрдорд╛рд░реНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╕реНрдорд╛рд░реНрдЯ рд╡рд┐рдЬреЗрдЯ рдореЗрдВ UI рддрд░реНрдХ рдирд╣реАрдВ рд╣реИред рдЧреВрдВрдЧрд╛ рд╡рд┐рдЬреЗрдЯ рдореЗрдВ UI рддрд░реНрдХ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рдирд╣реАрдВ рд╣реИред

рдпрджрд┐ рдЖрдк рдЗрд╕ рдкреИрдЯрд░реНрди рдХрд╛ рдкрд╛рд▓рди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдХрднреА рднреА рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдирд╣реАрдВ рдкрдбрд╝рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд╣рд╛рдВ рдЖрдк UI рдХреЛ рдмрд╛рдХрд┐рдпреЛрдВ рд╕реЗ рдЕрд▓рдЧ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред
рдмреАрдПрд▓рдУрд╕реА рдкреИрдЯрд░реНрди рдЬреИрд╕реЗ рдХреБрдЫ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддреЗ рд╕рдордп рдпрд╣ рдФрд░ рднреА рд╕рдЪ рд╣реИ; рдЬреЛ рд╡реНрдпрд╡рд╕рд╛рдп рдФрд░ UI рдХреЗ рдкреГрдердХреНрдХрд░рдг рдХреЛ рдЕрддреНрдпрдзрд┐рдХ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред

JSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ JS рд╕рд┐рдВрдЯреИрдХреНрд╕ рднрдпрд╛рдирдХ рд╣реИ

рдмрд╣реБрдд рд╣реА рд╕реБрд╡рд┐рдЪрд╛рд░рд┐рдд рдХрдерди рдФрд░ рдмрд╕ рд╕рдЪ рдирд╣реАрдВ рд╣реИред


render() {
  return React.createElement(Container, { padding: EdgeInsets.all(20.0) },
    React.createElement(Text, { style: { color: Colors.black } },
      'foo'
    )
  );
}
Widget build(BuildContext context) {
  return Container(
    padding: EdgeInsets.all(20.0),
    child: Text(
      'foo',
      style: TextStyle(color: Colors.black)
    ),
  );
}

render() {
  return (
    <Container padding={EdgeInsets.all(20.0)}>
      <Text style={{ color: Colors.black }}>foo</Text>
    </Container>
  );
}
Widget build(BuildContext context) {
  return (
    <Container padding={EdgeInsets.all(20.0)}>
      <Text style={TextStyle(color: Colors.black)}>{'foo'}</Text>
    </Container>
  );
}

рдмрд╣реБрдд рд╣реА рд╕реБрд╡рд┐рдЪрд╛рд░рд┐рдд рдХрдерди рдФрд░ рдмрд╕ рд╕рдЪ рдирд╣реАрдВ рд╣реИред

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

JSX рдХреЗ рдмрд┐рдирд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛:

  • 133 рд╡рд░реНрдг, рдЬрд┐рд╕рдореЗрдВ 3 рдХреЛрд╖реНрдардХ, 3 рдХреЛрд╖реНрдардХ, 3 : , 4 , рдФрд░ 11 рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рд╢рд╛рдорд┐рд▓ рд╣реИрдВ
  • React.createElement рджреЛ рдмрд╛рд░ рд▓рд┐рдЦрд╛ рдЧрдпрд╛

рдЬреЗрдПрд╕рдПрдХреНрд╕:

  • 104 рд╡рд░реНрдг, 2 рдХреЛрд╖реНрдардХ, 3 рдХреЛрд╖реНрдардХ, 1 : , 4 <> рдФрд░ 5 рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЗ рд╕рд╛рде
  • Container рдФрд░ Text рджреЛ рдмрд╛рд░ рд▓рд┐рдЦрд╛ рдЧрдпрд╛

рдбрд╛рд░реНрдЯ:

  • 99 рд╡рд░реНрдг, 2 рдХреЛрд╖реНрдардХ, 4 : , 3 , рдФрд░ 4 рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдХреЗ рд╕рд╛рде
  • рдХреЛрдИ рджреЛрд╣рд░рд╛рд╡ рдирд╣реАрдВ

рдкрд╛рддреНрд░реЛрдВ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ, рдпрд╣рд╛рдБ рд╕реНрдкрд╖реНрдЯ рд╡рд┐рдЬреЗрддрд╛ рдбрд╛рд░реНрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реИред


рдЕрдм рд╣рдореЗрдВ рдЕрдиреНрдп рдбрд╛рд░реНрдЯ рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдХреЛ рднреА рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред

рдбрд╛рд░реНрдЯ рд╕рд┐рдВрдЧрд▓ рдЪрд╛рдЗрд▓реНрдб рдмрдирд╛рдо рдорд▓реНрдЯреА-рдЪрд╛рдЗрд▓реНрдб рдЯрд╛рдЗрдк рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рдореЗрдВ const рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдЬреЗрдирд░рд┐рдХ рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдкреЛрдЬрд┐рд╢рдирд┐рдВрдЧ рдкреИрд░рд╛рдореАрдЯрд░ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред JSX рдЗрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдХрд╛ рднреА рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рдЬреЛ рдмреБрд░реА рддрд░рд╣ рд╕реЗ JSX рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ:

рд╣рдореЗрд╢рд╛ рдирд╣реАрдВ children :

Scaffold(
  appBar: AppBar(),
  body: Container(),
)

OR

SingleChildScrollView(
  child: Container(
    height: 100.0,
  ),
)

const рд╕реНрд╡рдпрдВ рд╡рд┐рдЬреЗрдЯ рдкрд░ рдирд┐рд░реНрдорд╛рддрд╛

const Padding(
  padding: const EdgeInsets.all(4.0),
)

рдЬреЗрдирд░рд┐рдХ

NotificationListener<ScrollNotification>(
  onNotification: (foo) {

  },
  child: child,
)

рддреИрдирд╛рдд рд╕рд╣рд╛рд░рд╛:

Text("foo")

рдирд╛рдорд╛рдВрдХрд┐рдд рдирд┐рд░реНрдорд╛рддрд╛

Positioned.fill(
  child: Container(),
);

рдмрд┐рд▓реНрдбрд░реНрд╕ (рдбрд╛рд░реНрдЯ рд╕рдВрдШ рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЗрд╕рд▓рд┐рдП children рд╡рд┐рдЬреЗрдЯ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рджреЛрдиреЛрдВ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ)

Builder(
  builder: (context) => Container(),
)

@rrousselGit

рдЬреИрд╕рд╛ рдХрд┐ рдбреАрдПрд╕рдПрдХреНрд╕ рд╕реЗ рдкрд╣рд▓реЗ рдХрдИ рдмрд╛рд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдмрд╕ рдПрдХ рдЕрд▓рдЧ рд╣реИ
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдФрд░ рдпрд╣ рдбрд╛рд░реНрдЯ рдХрд╛ рд╕реБрдкрд░рд╕реЗрдЯ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╡рд╣ рд╕рдм рдХреБрдЫ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдбрд╛рд░реНрдЯ рдЖрдк рдЗрд╕реЗ DSX рдХреЗ рдЕрдВрджрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рджреЛрдиреЛрдВ рдХреЛ рдорд┐рдХреНрд╕ рдПрдВрдб рдореИрдЪ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдлрд┐рдЯ рджреЗрдЦрддреЗ рд╣реИрдВред рдЬрд╛рд╣рд┐рд░ рд╣реИ рдЖрдкрдиреЗ рдЪреЗрдХ рдХрд░рдиреЗ рдХреА рдЬрд╣рдордд рднреА рдирд╣реАрдВ рдЙрдард╛рдИ
рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдП рдЧрдП DSX рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдХреБрдЫ рдХреНрдпрд╛ рд╣реИрдВ?
рдбрд╛рд░реНрдЯ:
https://spark-heroku-dsx.herokuapp.com/index.html

-1-----------------------------------------------------
рдбрд╛рд░реНрдЯ рдореЗрдВ:

Scaffold(
  appBar: AppBar(),
  body: Container(),
)

OR

SingleChildScrollView(
  child: Container(
    height: 100.0,
  ),
)

рдбреАрдПрд╕рдПрдХреНрд╕ рдореЗрдВ:

<Scaffold
  appBar={<AppBar/>}
  body={<Container/>}
/>

OR

<SingleChildScrollView>
  <Container
    height={100.0}
  />
</SingleChildScrollView>

-2-----------------------------------------------------
рдбрд╛рд░реНрдЯ рдореЗрдВ:

const Padding(
  padding: const EdgeInsets.all(4.0),
)

рдбреАрдПрд╕рдПрдХреНрд╕ рдореЗрдВ:

const Padding(
  padding: const EdgeInsets.all(4.0),
)

-3--------------------------------------------------------
рдбрд╛рд░реНрдЯ рдореЗрдВ:

NotificationListener<ScrollNotification>(
  onNotification: (foo) {

  },
  child: child,
)

рдбреАрдПрд╕рдПрдХреНрд╕ рдореЗрдВ:

<NotificationListener<ScrollNotification>
  onNotification={(foo) {

  }}
  child={child}
/>

-4 ----------------------------------------
рдбрд╛рд░реНрдЯ рдореЗрдВ:

Text("foo")

рдбреАрдПрд╕рдПрдХреНрд╕ рдореЗрдВ:

<Text ["foo"]/>

-5-----------------------------------------------------
рдбрд╛рд░реНрдЯ рдореЗрдВ:

Positioned.fill(
  child: Container(),
);

рдбреАрдПрд╕рдПрдХреНрд╕ рдореЗрдВ:

<Positioned.fill>
  <Container/>
</Positioned.fill>

-6-----------------------------------------------------
рдбрд╛рд░реНрдЯ рдореЗрдВ:

Builder(
  builder: (context) => Container(),
)

рдбреАрдПрд╕рдПрдХреНрд╕ рдореЗрдВ:

<Builder
  builder={(context) => <Container/>}
/>

рд▓реЗрдХрд┐рди рдлрд┐рд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реЗ рд╕реНрдкрдВрджрди рдореЗрдВ рдЖрд╕рд╛рди рд░реВрдкрд╛рдВрддрд░рдг рд╣реЛрдиреЗ рдХрд╛ рддрд░реНрдХ рдЕрдорд╛рдиреНрдп рд╣реИред рдЪреВрдВрдХрд┐ JSX рдЖрдкрдХреЗ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╕реЗ рдореМрд▓рд┐рдХ рд░реВрдк рд╕реЗ рдЕрд▓рдЧ рд╣реИ:

<MyAppBar>
    <title:Text [] style={Theme.of(context).primaryTextTheme.title}>
        Example title
    </title:Text>
</MyAppBar>

рдФрд░ рдпрд╣рд╛рдВ рдпрд╛ рдЖрдкрдХреЗ рд▓рд┐рдВрдХ рд╕реЗ рдЖрдкрдХрд╛ рдХреЛрдИ рднреА рдЙрджрд╛рд╣рд░рдг рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЛрдб рдХреЛ рд╕рд░рд▓ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдпрд╛ рдкрдардиреАрдпрддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рддрд╛ рд╣реИ

рдЬрд┐рддрдирд╛ рдореИрдВ рд▓рд╛рдкрддрд╛ JSX рдХреА рдЖрдкрдХреА рднрд╛рд╡рдирд╛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВ (рд╕реНрдкрдВрджрди рд╢реБрд░реВ рдХрд░рддреЗ рд╕рдордп рд╡рд╣реА рдорд┐рд▓рд╛), рдХреБрдЫ рдЕрдиреБрднрд╡ рдХреЗ рдмрд╛рдж, рдореВрд▓ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ


рдПрдХ рд╕рд╛рдЗрдб рдиреЛрдЯ рдХреЗ рд░реВрдк рдореЗрдВ, рдЖрдкрдХреА рдЪрд┐рдВрддрд╛ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдмреЗрд╣рддрд░ рд╕рдорд╛рдзрд╛рди рд╣реИред рд╡рд╣ рдПрдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рд╣реИ
рдЖрдкрдХреЗ рд╡рд┐рдЬреЗрдЯ рдХреЗ рдЖрдЧреЗ рдПрдХ xml/yaml рдлрд╝рд╛рдЗрд▓ рд╣реЛ рд╕рдХрддреА рд╣реИред рдФрд░ рдлрд┐рд░ рднрдпрд╛рдирдХ рдХреЛрдб рдЬрдирд░реЗрд╢рди рдЯреВрд▓рд┐рдВрдЧ рдбрд╛рд░реНрдЯ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

рдореИрдВ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдПрдХ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛:

// main.dart
import 'package:flutter/material.dart';

part 'main.g.dart';

class MyState extends StatefulWidget {
  <strong i="14">@override</strong>
  _MyStateState createState() => _MyStateState();
}

class _MyStateState extends State<MyState> {
  <strong i="15">@override</strong>
  Widget build(BuildContext context) {
    return $myStateStateTemplate(theme: Theme.of(context));
  }
}

рдП рдХреЗ рд╕рд╛рде рд╕рдВрдпреБрдХреНрдд

// main.xml
<strong i="19">@theme</strong> ThemeData

<Container  color={@theme.cardColor} />

рдЬреЛ рддрдм рдПрдХ рдХрд╕реНрдЯрдо рдХреЛрдб-рдЬреЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдбрд╛рд░реНрдЯ рдлрд╝рд╛рдЗрд▓ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ:

part of 'main.dart';

Widget $myStateStateTemplate({ThemeData theme}) {
  return Container(
    color: theme.cardColor,
  );
}

рдЕрдВрддрд┐рдо рдкрд░рд┐рдгрд╛рдо UI/рддрд░реНрдХ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "DSX" рд╕реЗ рднреА рдмреЗрд╣рддрд░ рд╣реИред рдпрд╣ рд╕рдВрднрд╛рд╡рд┐рдд UI рдЬреЗрдирд░реЗрдЯрд░ рдХреЗ рд▓рд┐рдП рднреА рдмреЗрд╣рддрд░ рд╣реИред рдФрд░ built рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИред

рдЪреВрдВрдХрд┐ JSX рдЖрдкрдХреЗ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╕реЗ рдореМрд▓рд┐рдХ рд░реВрдк рд╕реЗ рдЕрд▓рдЧ рд╣реИ:

рд╕рдЪ рдореЗрдВ !!! рдЗрди рдЪрд░реНрдЪрд╛рдУрдВ рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдХрдЯреНрдЯрд░рдкрдВрдереА рдереА, рдЬреЛ рдХрд┐ рд╡рд┐рд░реЛрдзрд┐рдпреЛрдВ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдереАред

рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕ рдЯрд┐рдХрдЯ рдХреЗ рд╢реАрд░реНрд╖рдХ рдореЗрдВ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, DSX JSX рдЬреИрд╕рд╛ рд╣реИ, рдпрд╣ JSX-рд╕рдорд╛рди рдирд╣реАрдВ рд╣реИ рдЕрдиреНрдпрдерд╛ рдЗрд╕реЗ JSX рдХрд╣рд╛ рдЬрд╛рддрд╛; рдФрд░ рдЗрд╕рдХреЗ рдкрд░рд┐рд╡рд░реНрдзрди рдорд╛рдореВрд▓реА рд╣реИрдВ рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред

рдЖрдк рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ:

<MyAppBar>
    <title:Text [] style={Theme.of(context).primaryTextTheme.title}>
        Example title
    </title:Text>
</MyAppBar>

or

<MyAppBar>
    <title:Text ['Example title'] style={Theme.of(context).primaryTextTheme.title}/>
</MyAppBar>

or

<MyAppBar
    title={<Text [] style={Theme.of(context).primaryTextTheme.title}>
        Example title
    <Text>}
/>

or

<MyAppBar
    title={<Text ['Example title'] style={Theme.of(context).primaryTextTheme.title}/>}
/>

рд╣рдореНрдо, рдЖрдк 'рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдХреЗ рдкреГрдердХреНрдХрд░рдг' рдХреЗ рд╕рд╛рде 'рдЪрд┐рдВрддрд╛ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ' рдХреЛ рднреНрд░рдорд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдпреЗ рдмрд╛рддреЗрдВ рдмрд╣реБрдд рдЕрд▓рдЧ рд╣реИрдВ; рдЖрдк рдбрд╛рд░реНрдЯ рдХреЛрдб рдФрд░ рдорд╛рд░реНрдХрдЕрдк рдХреЛрдб рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЕрд▓рдЧ рдХрд░рддреЗ рд╣реИрдВ, рдмрд╕ 'рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдХрд╛ рдкреГрдердХреНрдХрд░рдг' рд╣реИ рдФрд░ 'рдЪрд┐рдВрддрд╛рдУрдВ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ' рдХрд╛ рдХреЛрдИ рднреА рд▓рд╛рдн рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдВ рдПрдХ рдЪрд┐рдВрддрд╛ рдПрдХ рдШрдЯрдХ/рд╡рд┐рдЬреЗрдЯ рд╣реЛрдЧреА рдЬреЛ рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рдХреЛрдб рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕рдорд╛рд╣рд┐рдд рдХрд░рддреА рд╣реИ, рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдЙрд╕ рдШрдЯрдХ/рд╡рд┐рдЬреЗрдЯ рдХреЗ рдЕрдВрджрд░ рдпрд╣ рд╡рд┐рднрд┐рдиреНрди рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕реБрдЭрд╛рдИ рдЧрдИ рддрдХрдиреАрдХреЛрдВ рдХреЛ рдЕрд▓рдЧ рдХрд░рдирд╛ JSX/DSX рд╕реЗ рдмрд╣реБрдд рдХрдо рд╣реИ рдЬреЛ рдЕрдкрдиреЗ рд╕рднреА рдЕрдирд┐рд╡рд╛рд░реНрдп рдирд┐рд░реНрдорд╛рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдореЗрдЬрдмрд╛рди рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ (рд▓реВрдк, рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓, рдпрджрд┐ рдХрдерди, рдЖрджрд┐ рдХреЗ рд▓рд┐рдП)ред

рдпрд╣рд╛рдВ рдкреЛрд╕реНрдЯ рдХрд┐рдП рдЧрдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХреЛрдб рдФрд░ рдЙрджрд╛рд╣рд░рдг ( рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ ) рдХреЗ рдмрд╛рдж, рдореИрдВ рдЗрд╕ рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдкрд╣реБрдВрдЪрд╛ рд╣реВрдВ рдХрд┐ JSX DSX рдФрд░ рдбрд╛рд░реНрдЯ рдХреЗ рд╡рд┐рдкрд░реАрдд JS рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдореВрд▓реНрдп рдЬреЛрдбрд╝рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдореЗрд░реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ: рдХреНрд▓реЛрдЬрд┐рдВрдЧ рдЯреИрдЧред рдкрд╕рдВрдж:

<SingleChildScrollView>
  <Container
    height={100.0}
  />
</SingleChildScrollView>

рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдпрд╣рд╛рдБ рдХреА рддрд░рд╣ рдЧрд╣рд░реА рд╕рдВрд░рдЪрдирд╛рдУрдВ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рдВрдЬреНрдЮрд╛рдирд╛рддреНрдордХ рдЬрдЯрд┐рд▓рддрд╛ рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реИ:

SingleChildScrollView(
  child: Container(
    height: 100.0,
  ),
)

рд▓реЗрдХрд┐рди рдареАрдХ рд╣реИ, рдЕрдЧрд░ рдЖрдк рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рддреЗ рд╣реИрдВ:

<Scaffold
  appBar={<AppBar/>}
  body={<Container/>}
/>

рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рд▓рд╛рдн рд╣реИред

рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕ рдЯрд┐рдХрдЯ рдХреЗ рд╢реАрд░реНрд╖рдХ рдореЗрдВ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, DSX JSX рдЬреИрд╕рд╛ рд╣реИ, рдпрд╣ JSX-рд╕рдорд╛рди рдирд╣реАрдВ рд╣реИ

рдЖрдкрдиреЗ рдореЗрд░реЗ "рд▓реЗрдХрд┐рди рдлрд┐рд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реЗ рд╕реНрдкрдВрджрди рдореЗрдВ рдЖрд╕рд╛рди рд░реВрдкрд╛рдВрддрд░рдг рд╣реЛрдиреЗ рдХрд╛ рддрд░реНрдХ рдЕрдорд╛рдиреНрдп рд╣реИред"

DSX рдХреЗ рд▓рд┐рдП рдЖрдзреЗ рддрд░реНрдХ "JSX рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИ, рд╣рдореЗрдВ рдпрд╣рд╛рдБ рднреА рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ"ред рд▓реЗрдХрд┐рди рдЖрдк JSX рд╕реЗ рдХреБрдЫ рдЕрд▓рдЧ (рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓) рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рджреВрд╕рд░рд╛ рдЖрдзрд╛ рдпреВрдЖрдИ рдХреЛ рдХреЛрдб рд╕реЗ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ; рдЬреЛ рдПрдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рднреА рдХрд░ рд╕рдХрддреА рд╣реИред

рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕реБрдЭрд╛рдИ рдЧрдИ рддрдХрдиреАрдХреЛрдВ рдХреЛ рдЕрд▓рдЧ рдХрд░рдирд╛ JSX/DSX рд╕реЗ рдмрд╣реБрдд рдХрдо рд╣реИ рдЬреЛ рдЕрдкрдиреЗ рд╕рднреА рдЕрдирд┐рд╡рд╛рд░реНрдп рдирд┐рд░реНрдорд╛рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдореЗрдЬрдмрд╛рди рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ (рд▓реВрдк, рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓, рдпрджрд┐ рдХрдерди, рдЖрджрд┐ рдХреЗ рд▓рд┐рдП)ред

рд╕рдЪ рдирд╣реАрдВред рдЖрдк рдЕрдкрдиреА рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрджрд░ if рдФрд░ рд╕рд╛рдорд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред cshtml рдпрд╛ рдХреЛрдгреАрдп рдЯреЗрдореНрдкреНрд▓реЗрдЯ рджреЗрдЦреЗрдВред

рдмрд╛рдд рдПрдХ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рд╣реИ, рдЬрдм рддрдХ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдкрд╛рд░реНрд╕рд░ рд╣реИ, рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдПрдХ рд╕рдкреНрддрд╛рд╣ рд╕реЗ рднреА рдХрдо рд╕рдордп рдореЗрдВ рд╕реНрдкрдВрджрди рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдпрд╣ yaml, xml, cshtml, рдпрд╛ html рд╣реЛред

рдЬрдмрдХрд┐ рдПрдХ DSX рдХреЛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред


@Bessonov рдЙрдиреНрд╣реЛрдВрдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдХреНрд▓реЛрдЬрд┐рдВрдЧ рдЯреИрдЧ рдХрд╛ рдордЬрд╛рдХ рдЙрдбрд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерд┐рдд IDEs рдкрд░ рдЖрднрд╛рд╕реА рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдЬреЛрдбрд╝реАрдВред

рддреЛ рдЖрдкрдХреЗ рдмрдирд╛рдо рдХреЛрдб рдореЗрдВ рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рджреЗрдЦреЗрдВрдЧреЗ:

SingleChildScrollView(
  child: Container(
    height: 100.0,
  ), // Container
) // SingleChildScrollView

рдЯреИрдЧ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд╛рднред рдЙрдиреНрд╣реЗрдВ рдЯрд╛рдЗрдк рдХрд┐рдП рдмрд┐рдирд╛

@rrousselGit

рдЙрдиреНрд╣реЛрдВрдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдХреНрд▓реЛрдЬрд┐рдВрдЧ рдЯреИрдЧ рдХрд╛ рдордЬрд╛рдХ рдЙрдбрд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерд┐рдд рдЖрдИрдбреАрдИ рдкрд░ рдЖрднрд╛рд╕реА рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдЬреЛрдбрд╝реАрдВред

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

рдмрд╛рдд рдПрдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рд╣реИ

IMHO рдЯреЗрдореНрдкреНрд▓реЗрдЯ NIH рд╕рд┐рдВрдбреНрд░реЛрдо рд╕реЗ рдЧреНрд░рд╕реНрдд рд╣реИрдВред рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдХрд╣рддрд╛ рдХрд┐ PHP рдФрд░ HTML рдХреЛ рдорд┐рд▓рд╛рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рд╕рд╣реА рддрд░реАрдХрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ JSX рдХреЗ рд╕рд╛рде рджрд┐рдЦрд╛рддреА рд╣реИ рдХрд┐ рдЗрд╕реЗ рдФрд░ рдмреЗрд╣рддрд░ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

@rrousselGit

рдЖрдкрдиреЗ рдореЗрд░реЗ "рд▓реЗрдХрд┐рди рдлрд┐рд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реЗ рд╕реНрдкрдВрджрди рдореЗрдВ рдЖрд╕рд╛рди рд░реВрдкрд╛рдВрддрд░рдг рд╣реЛрдиреЗ рдХрд╛ рддрд░реНрдХ рдЕрдорд╛рдиреНрдп рд╣реИред"

рдирд╣реАрдВ, рдореИрдВрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВ рдЫреЛрдбрд╝рд╛, рдЗрд╕рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдк рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ JSX рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧ DSX рдХреЛ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рдкрд╛рдПрдВрдЧреЗред

DSX рдХреЗ рд▓рд┐рдП рдЖрдзреЗ рддрд░реНрдХ...

DSX рдХреЛ рдЪреБрдирдиреЗ рдХреЗ рдХрдИ рдХрд╛рд░рдг рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рд▓реЛрдЧ рд╡рд╣реА рдЪреБрдиреЗрдВрдЧреЗ рдЬреЛ рдЙрдирдХреЗ рдкрд╛рд╕ рдХрд┐рд╕реА рднреА рдХрд╛рд░рдг рд╕реЗ рдкрд╕рдВрдж рд╣реЛред

рд╕рдЪ рдирд╣реАрдВред рдЖрдк рдЕрдкрдиреА рдЯреЗрдореНрдкрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдВрджрд░ рдФрд░ рд╕рд╛рдорд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред cshtml рдпрд╛ рдХреЛрдгреАрдп рдЯреЗрдореНрдкрд▓реЗрдЯ рджреЗрдЦреЗрдВред

рдмрд╛рдд рдПрдХ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓ рд╣реИ, рдЬрдм рддрдХ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдкрд╛рд░реНрд╕рд░ рд╣реИ, рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдПрдХ рд╕рдкреНрддрд╛рд╣ рд╕реЗ рднреА рдХрдо рд╕рдордп рдореЗрдВ рд╕реНрдкрдВрджрди рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдпрд╣ yaml, xml, cshtml, рдпрд╛ html рд╣реЛред

рдЬрдмрдХрд┐ рдПрдХ DSX рдХреЛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡рд┐рдкрд░реАрдд, рдбреАрдПрд╕рдПрдХреНрд╕ рдХреЗрд╡рд▓ 2 рдПрдХреНрд╕рдПрдордПрд▓ рдЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдо рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рднрд╛рд╖рд╛ рд╕реЗ рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рдореБрдлреНрдд рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред рдЕрдкрдиреА рдирдИ рдЯреЗрдореНрдкреНрд▓реЗрдЯрд┐рдВрдЧ рднрд╛рд╖рд╛ рдХреЗ рдЕрдВрджрд░ рдбрд╛рд░реНрдЯ рдХреА рд╢рдХреНрддрд┐ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВред рдирд╣реАрдВ рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВ рдбрд╛рд░реНрдЯ рд▓реВрдВрдЧрд╛ред

рдирд╣реАрдВ, рдореИрдВрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВ рдЫреЛрдбрд╝рд╛, рдЗрд╕рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдк рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ JSX рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧ DSX рдХреЛ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рдкрд╛рдПрдВрдЧреЗред

рд╡рд░реНрддрдорд╛рди рдбрд╛рд░реНрдЯ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд░ рднреА рдпрд╣реА рдмрд╛рдд рд▓рд╛рдЧреВ рд╣реЛрддреА рд╣реИред


рд╡реИрд╕реЗ рднреА, рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд╣рдо рдпрд╣рд╛рдВ рдПрдХ-рджреВрд╕рд░реЗ рдХреЛ рдордирд╛ рд╕рдХрддреЗ рд╣реИрдВред рддреЛ рдореИрдВ рдмрд╕ рдХреБрдЫ рдФрд░ рдХрд╛рд░рдгреЛрдВ рдХреА рд╕реВрдЪреА рджреВрдВрдЧрд╛ рдХрд┐ рдХреНрдпреЛрдВ рдореИрдВ JSX рдХреЛ рд╕реНрдкрдВрджрди рдореЗрдВ рдирд╛рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдлрд┐рд░ "рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВ рдФрд░ рджреЗрдЦреЗрдВ"ред

1. рд╡рд┐рдЬреЗрдЯ рдирд┐рд░реНрдорд╛рдг рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реЗ рдЕрд▓рдЧ рд╣реИ

рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдпрд╣ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИ рдЬреЛ рдШрдЯрдХреЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЛ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИред JSX рдареАрдХ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХрд╣рддрд╛ рд╣реИ "рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рди рдХрд░реЗрдВ рдХрд┐ рдЪреАрдЬреЗрдВ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИрдВред рд╣рдо рдЖрдкрдХреЗ рд▓рд┐рдП рдЪреАрдЬреЗрдВ рдХрд░рддреЗ рд╣реИрдВ"ред

рд╕реНрдкрдВрджрди рдореЗрдВ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рдмрд┐рд▓реНрдб рдХреЙрд▓ рдкрд░ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдПрдХ рдирдпрд╛ рд╡рд┐рдЬреЗрдЯ рддреБрд░рдВрдд рдЪрд╛рд▓реВ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рд╕рдордЭрдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдФрд░ JSX рдЗрд╕реЗ рдХрдо рд╕реНрдкрд╖реНрдЯ рдХрд░реЗрдЧрд╛ред

рдФрд░, рдЙрд╕ рддрд░реНрдХ рдХреА рдирд┐рд░рдВрддрд░рддрд╛ рдореЗрдВ:

2. рд▓реЛрдЧ рд╕реЛрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ <Foo /> рдХреБрдЫ рдЦрд╛рд╕ рдХрд░рддрд╛ рд╣реИ рдЬреЛ new Foo() рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ

<Foo /> рдПрдХ рд╡рд┐рдзрд┐ рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рд▓рдЧрддрд╛ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдврд╛рдВрдЪреЗ рдореЗрдВ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдХреБрдЫ рдмрд╛рд╣рд░реА рдХрд░рддрд╛ рд╣реИред рдЬреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╕рдЪ рд╣реИ, рдЬрд╣рд╛рдВ рдШрдЯрдХреЛрдВ рдХреЛ React.Element рдореЗрдВ рд▓рдкреЗрдЯрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдпрд╣ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рддрд╛ рд╣реИ <Foo /> != new Foo() рдФрд░ Foo рддрдХ рд╕реАрдзреА рдкрд╣реБрдВрдЪ рдирд╣реАрдВ рд╣реИред

рдпрд╣ рд╕реНрдкрдВрджрди рдореЗрдВ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рднреНрд░рдо рдкреИрджрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рднреА :

<Foo>
  <Bar />
</Foo>

рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдпрджрд┐ Foo рдХрднреА рднреА рдЕрдкрдиреЗ рдмрдЪреНрдЪреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рддреЛ Bar рдХрднреА рднреА рддрддреНрдХрд╛рд▓ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдФрд░ Foo рдХреЛ render рдореЗрдердб рд░рд┐рдЯрд░реНрди рдХреЗ рдмрд╛рдж рдЗрдВрд╕реНрдЯреЗрдВрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЬрдмрдХрд┐ рд╕реНрдкрдВрджрди рдореЗрдВ рдпрд╣ рд╡рд┐рдкрд░реАрдд рд╣реИред Bar рдФрд░ Foo рджреЛрдиреЛрдВ рддреБрд░рдВрдд рдмрди рдЬрд╛рддреЗ рд╣реИрдВ

рдпрд╣ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рд░рд┐рдПрдХреНрдЯ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЧреИрд░-рдЕрдиреБрдХреВрд▓рд┐рдд рд╕реНрдкрдВрджрди рдХреЛрдб рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд░реЗрдЧрд╛ред

3. рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░ рдбрд╛рд░реНрдЯ/рд╕реНрдкрдВрджрди рдЬреЗрдПрд╕/рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рд╣реИ

рдЕрдЧрд░ рд╣рдо рдбрд╛рд░реНрдЯ рдореЗрдВ JSX рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЯрд╛рдЗрдк рдпреВрдирд┐рдпрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореБрджреНрджреЛрдВ рдХреЛ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдпрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ
return foo && <Component /> рдпрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЖрдЧрд╛рдореА async рдкреНрд░рддрд┐рдкрд╛рджрдиред
"рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА JSX рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╡рд╣ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ!"

рдбрд╛рд░реНрдЯ рдореЗрдВ рдирд╡реАрдирддрдо JSX/рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдПрдХ рдорд╛рд▓рд┐рдХрд╛рдирд╛ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдпрд╛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛

4. JSX рдХреБрдЫ рдбрд╛рд░реНрдЯ рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдХреЛ рдЕрд╕реНрдкрд╖реНрдЯ рдмрдирд╛рддрд╛ рд╣реИ

рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдЙрджрд╛рд╣рд░рдг, Scaffold рдХреЗ рд▓рд┐рдП appbar a PrefferedSizeWidget рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдпрджрд┐ рд╣рдордиреЗ JSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Scaffold рдмрдирд╛рдпрд╛ рд╣реИ, рддреЛ рд▓реЛрдЧ рдЙрдореНрдореАрдж рдХрд░реЗрдВрдЧреЗ рдХрд┐ рдЖрдк рдХрд┐рд╕реА рджрд┐рдП рдЧрдП JSX рдХреЛ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред рдЬреЛ рд╕рдЪ рдирд╣реАрдВ рд╣реИ

рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ, рдпрд╣ рдмрд╣реБрдд рдЕрд╕реНрдкрд╖реНрдЯ рдмрдирд╛рддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдРрд╕рд╛ рдХреНрдпреЛрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

<Scaffold
  appbar={<AppBar />}
/>

рд▓реЗрдХрд┐рди рдирд╣реАрдВ

<Scaffold
  appbar={<Container />}
/>

@rrousselGit

рд╡реИрд╕реЗ рднреА, рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд╣рдо рдпрд╣рд╛рдВ рдПрдХ-рджреВрд╕рд░реЗ рдХреЛ рдордирд╛ рд╕рдХрддреЗ рд╣реИрдВред рддреЛ рдореИрдВ рдмрд╕ рдХреБрдЫ рдФрд░ рдХрд╛рд░рдгреЛрдВ рдХреА рд╕реВрдЪреА рджреВрдВрдЧрд╛ рдХрд┐ рдХреНрдпреЛрдВ рдореИрдВ JSX рдХреЛ рд╕реНрдкрдВрджрди рдореЗрдВ рдирд╛рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдлрд┐рд░ "рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВ рдФрд░ рджреЗрдЦреЗрдВ"ред

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

  1. рд╡рд┐рдЬреЗрдЯ рдирд┐рд░реНрдорд╛рдг рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реЗ рдЕрд▓рдЧ рд╣реИ

рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рдХреЛрдИ рдорд╛рдпрдиреЗ рдирд╣реАрдВ рд░рдЦрддрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╡рд┐рд╡рд░рдг рд╣реИ, рд╡реИрдЪрд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдПрдХ рдмрд╛рд░ рдЬрдм рдЖрдк рдХреБрдЫ рдПрдХреНрд╕рдПрдордПрд▓ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рд░рд┐рдПрдХреНрдЯ рдореЗрдВ рдпрд╣ рдПрдХ рдШрдЯрдХ рд╣реИ, рд╕реНрдкрдВрджрди рдореЗрдВ рдпрд╣ рдПрдХ рд╡рд┐рдЬреЗрдЯ рд╣реИред

  1. рд▓реЛрдЧ рд╕реЛрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдХреБрдЫ рдЦрд╛рд╕ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдирдпрд╛ рдлреВ () рдирд╣реАрдВ

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд▓реЛрдЧ рдмрд╣реБрдд рдЬрд▓реНрджреА рд╕реАрдЦреЗрдВрдЧреЗ рдХрд┐ рдбрд╛рд░реНрдЯ/рдбреАрдПрд╕рдПрдХреНрд╕ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ/рдЬреЗрдПрд╕рдПрдХреНрд╕ рдирд╣реАрдВ рд╣реИред

  1. рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░ рдбрд╛рд░реНрдЯ/рд╕реНрдкрдВрджрди рдЬреЗрдПрд╕/рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рд╣реИ

рд╣рд╛рдВ, рд╣рдо рдЕрдВрдд рдореЗрдВ рдХрд┐рд╕реА рдмрд╛рдд рдкрд░ рд╕рд╣рдордд рд╣реЛрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рднрд▓реЗ рд╣реА рд╡реЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╣реЛрдВ, рдЖрдо рдзрд╛рдЧрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╡реЗ рдШреЛрд╖рдгрд╛рддреНрдордХ рдпреВрдЖрдИ рдврд╛рдВрдЪреЗ рд╣реИрдВ рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдШреЛрд╖рдгрд╛рддреНрдордХ рд╡реГрдХреНрд╖ рд╕рдВрд░рдЪрдирд╛рдПрдВ рдЬреЗрдПрд╕рдПрдХреНрд╕/рдбреАрдПрд╕рдПрдХреНрд╕ рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдВрднрд╛рд▓реА рдЬрд╛рддреА рд╣реИрдВред рдпрд╣ рдЖрдкрдХреЛ рдШреЛрд╖рдгрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рддрд░реАрдХреЗ рд╕реЗ рд╕реЛрдЪрдиреЗ рдкрд░ рд░рдЦрддрд╛ рд╣реИред

рдпрджрд┐ рд╣рдо рдбрд╛рд░реНрдЯ рдореЗрдВ JSX рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЯрд╛рдЗрдк рдпреВрдирд┐рдпрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореБрджреНрджреЛрдВ рдХреЛ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдпрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ return foo && <Component /> рдпрд╛ рдЖрдЧрд╛рдореА async рд░реЗрдВрдбрд░рд┐рдВрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВред
"рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА JSX рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╡рд╣ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ!"

рд╣рдо рдбрд╛рд░реНрдЯ рдореЗрдВ JSX рдирд╣реАрдВ рдЬреЛрдбрд╝ рд░рд╣реЗ рд╣реИрдВ, рд╣рдо DSX рдЬреЛрдбрд╝ рд░рд╣реЗ рд╣реИрдВ, рдпрд╣ рдЕрд▓рдЧ рд╣реИ рд▓реЗрдХрд┐рди JSX рд╕реЗ рд╕рдорд╛рдирддрд╛ рд╣реИ рдФрд░ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдирд╛ рдмрд╣реБрдд рдмрдбрд╝реА рдмрд╛рдд рд╣реИред

рдбрд╛рд░реНрдЯ рдореЗрдВ рдирд╡реАрдирддрдо JSX/рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдПрдХ рдорд╛рд▓рд┐рдХрд╛рдирд╛ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдпрд╛ рдХреЛрдИ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдмрд┐рд▓реНрдХреБрд▓ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ред

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

  1. JSX рдХреБрдЫ рдбрд╛рд░реНрдЯ рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдХреЛ рдЕрд╕реНрдкрд╖реНрдЯ рдмрдирд╛рддрд╛ рд╣реИ

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

@cbazza рдореИрдВрдиреЗ рдЖрдкрдХреА рдкреЛрд╕реНрдЯ рдкрдврд╝рдиреЗ рдореЗрдВ рдШрдВрдЯреЛрдВ рдмрд┐рддрд╛рдП рдФрд░ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЖрдкрдХреЗ рдкреНрд░рдпрд╛рд╕ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рддрд░реНрдХ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рдирд╛ (рддрд░рд╣ рдХрд╛) рдЖрд╕рд╛рди рд╣реИред рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рдлреНрд▓рдХреНрд╕ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди рд╕рдорд╛рдзрд╛рди рдерд╛ рд▓реЗрдХрд┐рди рдЕрдм рд╣рд░ рдХреЛрдИ рд░реЗрдбрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ? рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдХреЗ рд▓рд┐рдП рдХрд┐рддрдиреЗ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХрд╛рдо рд╣реИрдВ? рдмрд╕ рдПрдХ DSX рд░реЗрдкреЛ рдмрдирд╛рдПрдВ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдиреЗ рд╡рд╛рд▓реЗ рджреЗрд╡реЛрдВ рдХреЛ рдХреВрджрдиреЗ рджреЗрдВред

@rrousselGit

рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдХрднреА рдбрд╛рд░реНрдЯ рдореЗрдВ part / part of рд╕рд┐рдВрдЯреИрдХреНрд╕ рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИ, рдФрд░ рдореБрдЭреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдЦреЛрдЬрдиреЗ рдореЗрдВ рдкрд░реЗрд╢рд╛рдиреА рд╣реЛ рд░рд╣реА рд╣реИред рдХреНрдпрд╛ рдбрд╛рд░реНрдЯ/рд╕реНрдкрдВрджрди рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддреМрд░ рдкрд░ рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ? рдореБрдЭреЗ FLUI рдореЗрдВ рдРрд╕рд╛ рдХреБрдЫ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ред


@cbazza

рдЖрдк DSX рдФрдЪрд┐рддреНрдп рдХреЗ рд╕рд╛рде рдордВрдбрд▓рд┐рдпреЛрдВ рдореЗрдВ рдШреВрдорддреЗ рд░рд╣рддреЗ рд╣реИрдВред DSX JSX рдирд╣реАрдВ рд╣реИред DSX JSX рдЬреИрд╕рд╛ рд╣реИред DSX рд░рд┐рдПрдХреНрдЯ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░рд┐рдЪрд┐рдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣реИред DSX рдбрд╛рд░реНрдЯ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдерд┐рдВрдХ рд╕рд┐рдВрдЯреИрдХреНрдЯрд┐рдХ рд╢реБрдЧрд░ рд╣реИред рд▓реЛрдЧ рд╕реАрдЦреЗрдВрдЧреЗ рдХрд┐ DSX JSX рдирд╣реАрдВ рд╣реИред (рдФрд░ рдЗрд╕реА рддрд░рд╣ред)

рдЬрдмрдХрд┐ рдореБрдЭреЗ рд╡рд╣ рдмрд┐рдВрджреБ рдорд┐рд▓рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рдЙрди рд╕рднреА рд╕реНрдкрд╖реНрдЯреАрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдбреАрдПрд╕рдПрдХреНрд╕ рдХреА рдкреНрд░рдХреГрддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдкреНрд░рдореБрдЦ рдореБрджреНрджреЗ рдХрд╛ рдЦреБрд▓рд╛рд╕рд╛ рдХрд░рдирд╛ рд╣реИ, рдФрд░ рдпрд╣ рдПрдХ рдРрд╕рд╛ рдмрд┐рдВрджреБ рд╣реИ рдЬрд┐рд╕реЗ rrouselGit рднреА рд▓рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рдЬрдм рдЖрдк рдпрд╣ рдХрд╣рддреЗ рд░рд╣рддреЗ рд╣реИрдВ рдХрд┐ DSX _not_ JSX рд╣реИ, рддреЛ рдЗрд╕реЗ рдЦреЛрдЬрдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧ рд╕реЛрдЪреЗрдВрдЧреЗ рдХрд┐ рдпрд╣ рд╣реИ, рдФрд░ рдпрд╣ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИред JSX, рдФрд░ рдЬреЛ рд▓реЛрдЧ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рд╡реЗ рдПрдХ рдРрд╕реЗ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рд╕реЗ рдЖрддреЗ рд╣реИрдВ рдЬреЛ рдХрд┐ рдбрд╛рд░реНрдЯ/рд╕реНрдкрдВрджрди рд╕реЗ рдореМрд▓рд┐рдХ рд╕реНрддрд░реЛрдВ рдкрд░ рдЕрд╡рдзрд╛рд░рдгрд╛рддреНрдордХ рд░реВрдк рд╕реЗ рднрд┐рдиреНрди рд╣реИред рдЬреИрд╕реЗ, "рдкрд░рд┐рдЪрд┐рдд" рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рдПрдХ рдЕрдЪреНрдЫреА рдмрд╛рдд рдирд╣реАрдВ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреЗ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рдХрд╛рд░рдгреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЛрдЧ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ:

Widget build(BuildContext context) {
    return isDialogVisible && <Widget>...</Widget>;
}

рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ Javascript/JSX рд╕реЗ рдЖрддреЗ рд╣реИрдВ, рд╡реЗ рдЙрдореНрдореАрдж рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╕рд┐рдВрдЯреИрдХреНрд╕ DSX рдореЗрдВ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред рдЬрдм рдРрд╕рд╛ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕рдВрдЬреНрдЮрд╛рдирд╛рддреНрдордХ рдЕрд╕рдВрдЧрддрд┐ рдХрд╛ рдПрдХ рдмрд┐рдВрджреБ рдмрди рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рди рдХреЗрд╡рд▓ DSX рдореЗрдВ рдмрд▓реНрдХрд┐ рдкреВрд░реЗ рд╕реНрдкрдВрджрди рдореЗрдВ рдЙрдирдХреА рд░реБрдЪрд┐ рдХреЛ _рдЪреЛрдЯ_ рд╕рдХрддрд╛ рд╣реИред рдкрд░рд┐рдЪрд┐рдд рддрдм рдлрд╛рдпрджреЗрдордВрдж рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд▓реЛрдЧреЛрдВ рдХреЛ рдХреБрдЫ рдирдпрд╛ рдХрд░рдиреЗ рдореЗрдВ рдЖрд╕рд╛рдиреА рдХрд░рдиреЗ рдХреЗ рд╕рд╛рдзрди рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рджреЛрдзрд╛рд░реА рддрд▓рд╡рд╛рд░ рд╣реЛ рд╕рдХрддреА рд╣реИ - рдЬрдм 90% рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╕рдорд╛рди рд╣реЛрддреА рд╣реИрдВ, рддреЛ рд╢реЗрд╖ 10% рдХреЗрд╡рд▓ рдирд┐рд░рд╛рд╢ рдФрд░ рдкрд░реЗрд╢рд╛рди рдХрд░рдиреЗ рдХрд╛ рдХрд╛рдо рдХрд░ рд╕рдХрддреА рд╣реИрдВред

DSX рдХреЗ рд╕рд╛рде рдПрдХ рдФрд░ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рднреА рд╕рдордп рдЬрд▓реНрдж рд╣реА рдПрдХ рдирд┐рд░реНрдмрд╛рдз рд░реВрдк рд╕реЗ рдПрдХреАрдХреГрдд рд╕реБрд╡рд┐рдзрд╛ рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ, рднрд▓реЗ рд╣реА рдпрд╣ рдПрдХ рддреГрддреАрдп-рдкрдХреНрд╖ рдкреНрд▓рдЧрдЗрди рд╣реЛ рдпрд╛ рдЗрд╕реЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддреМрд░ рдкрд░ Flutter рджреНрд╡рд╛рд░рд╛ рдЕрдкрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реЛред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХрд╣рд╛ рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдлрд╝реНрд▓рдЯрд░ рдбрд┐рдмрдЧрд┐рдВрдЧ рдФрд░ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЗрд╕реЗ рди рдХреЗрд╡рд▓ рдлрд╝реНрд▓рдЯрд░ рдЯреАрдо рдмрд▓реНрдХрд┐ рдбрд╛рд░реНрдЯ рдЯреАрдо рд╕реЗ рднреА рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рдорд░реНрдерди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЕрд╕рдлрд▓ рд╣реЛрдиреЗ рдкрд░, рдкреВрд░реНрд╡-рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдФрд░ рдЯреВрд▓реАрдВрдЧ рд╕рдорд░реНрдерди рдХреЗ рдмрд┐рдирд╛, рдбреАрдПрд╕рдПрдХреНрд╕ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ рдмрд╛рд╣рд░реА рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдкрд╛рдВрддрд░рдг рдЯреВрд▓ рдХреЗ рд╕рд╛рде рд╣реИ, рдЬреЛ рдХрд┐ рдПрдХ рдФрд░ (рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рд▓рдВрдмрд╛) рдХрджрдо рд╣реИ рдЬрд┐рд╕рд╕реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЧреБрдЬрд░рдирд╛ рд╣реЛрдЧрд╛ред


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

@andrewackerman

part / part of рдПрдХ рдореМрдЬреВрджрд╛ рдбрд╛рд░реНрдЯ рд╕реБрд╡рд┐рдзрд╛ рд╣реИред рдпрд╣ рдХрд┐рд╕реА рддрд░рд╣ рджреЛ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рдореЗрдВ рдорд┐рд▓рд╛ рджреЗрддрд╛ рд╣реИред рдЖрдорддреМрд░ рдкрд░ рдХреЛрдб рдЬрдирд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдХреБрдЫ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдорд╛рдорд▓реЗ рдкрд░рд┐рджреГрд╢реНрдп рд╣реИрдВ рдЬреЛ рдРрд╕реА рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЬреИрд╕реЗ json_serializable рдЬреЛ toJSON рд╡рд┐рдзрд┐ рдФрд░ fromJSON рдлреИрдХреНрдЯреНрд░реА рдХреЛ рдЙрдирдХреЗ рдЧреБрдгреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИред

part / part of рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдкрдиреЗ рдЖрдк рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЬрдм рдЖрдк рдЗрд╕реЗ source_gen рдЬреИрд╕реА рдХрд┐рд╕реА рдЪреАрдЬрд╝ рд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред

@sunnylqm

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд░реЗрдкреЛ рдкрд░ рдХреЛрдб рдбрд╛рд▓рдиреЗ рд╕реЗ рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡рд░реНрддрдорд╛рди рдореБрджреНрджрд╛ рдбреАрдПрд╕рдПрдХреНрд╕ рдХреЛ рд╕реНрдкрдВрджрди рдЙрдкрдХрд░рдг рдХреЗ рд╕рд╛рде рдареАрдХ рд╕реЗ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ рддрд╛рдХрд┐ рдбрд┐рдмрдЧрд░, рдСрдЯреЛ-рдкреВрд░реНрдг, рдЖрджрд┐ рдХреЗ рд╕рд╛рде .dsx рдлрд╝рд╛рдЗрд▓ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдПрдХ рдорд╣рд╛рди рдбреЗрд╡рд▓рдкрд░ рдЕрдиреБрднрд╡ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред

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

@andrewackerman

рдореБрдЭреЗ рдХреБрдЫ рднреА рд╕рд╣реА рдард╣рд░рд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рдореБрдЭреЗ рдкреВрд░рд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ DSX рд╣рд┐рдЯ рд╣реЛрдЧрд╛ рдФрд░ рдЕрдХреЗрд▓реЗ рдЗрд╕ рдЯрд┐рдХрдЯ рдкрд░ рд▓рдЧрднрдЧ 100 рд▓реЛрдЧ рдЗрд╕рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВред

рдЕрд╕рдлрд▓ рд╣реЛрдиреЗ рдкрд░, рдкреВрд░реНрд╡-рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдФрд░ рдЯреВрд▓реАрдВрдЧ рд╕рдорд░реНрдерди рдХреЗ рдмрд┐рдирд╛, рдбреАрдПрд╕рдПрдХреНрд╕ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ рдмрд╛рд╣рд░реА рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдкрд╛рдВрддрд░рдг рдЯреВрд▓ рдХреЗ рд╕рд╛рде рд╣реИ, рдЬреЛ рдХрд┐ рдПрдХ рдФрд░ (рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рд▓рдВрдмрд╛) рдХрджрдо рд╣реИ рдЬрд┐рд╕рд╕реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЧреБрдЬрд░рдирд╛ рд╣реЛрдЧрд╛ред

DSX рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдЕрдВрдзрд╛рдзреБрдВрдз рддреЗрдЬрд╝ рд╣реИ рдФрд░ .dsx рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ .dart рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдкрд▓рдХ рдЭрдкрдХрдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рддреЗрдЬрд╝реА рд╕реЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЧрддрд┐ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ; рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдбреАрдПрд╕рдПрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдмрд┐рдирд╛ рджрд┐рдорд╛рдЧ рдХреЗ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдлреАрдЪрд░ рд╕рдорд╛рдирддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдЕрдЧрд░ рдРрд╕рд╛ рд╣реИ, рддреЛ рд░рд┐рдПрдХреНрдЯ рд╣реА рдмрд╛рдЬрд╛рд░ рдореЗрдВ рдореМрдЬреВрджрдЧреА рд╡рд╛рд▓рд╛ рдПрдХрдорд╛рддреНрд░ рдврд╛рдВрдЪрд╛ рдХреНрдпреЛрдВ рд╣реИ рдЬреЛ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░ рд░рд╣рд╛ рд╣реИ? рджреЛрдиреЛрдВ рдиреЗрдЯрд┐рд╡ рдФрд░ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдореЛрдмрд╛рдЗрд▓ рдРрдк рдлреНрд░реЗрдорд╡рд░реНрдХ рдЙрдирдХреЗ рд╕реНрдЯреЛрд░реАрдмреЛрд░реНрдб, рдЙрдирдХреА рдПрдХреНрд╕рдПрдордПрд▓ рдлрд╛рдЗрд▓реЛрдВ, рдЙрдирдХреА рдПрдХреНрд╕рдПрдПрдордПрд▓ рдлрд╛рдЗрд▓реЛрдВ рдФрд░ рдРрд╕реА рдЕрдиреНрдп рдпреВрдЖрдИ рдкрд░рд┐рднрд╛рд╖рд╛ рдбреАрдПрд╕рдЯреА рдХреЗ рд╕рд╛рде рдлрдВрд╕ рдЧрдП рд╣реИрдВред

рдмрд╕ рдПрдХ рд╕рдордпрд░реЗрдЦрд╛ рдмрдирд╛рдПрдВ рдФрд░ рдЖрдк рдпреВрдЖрдИ рд╡рд┐рдХрд╛рд╕ рд╡рд┐рдХрд╛рд╕ рджреЗрдЦреЗрдВрдЧреЗред Android рдФрд░ iOS рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдЕрдкрдиреЗ рдореМрдЬреВрджрд╛ рддрд░реАрдХреЛрдВ рд╕реЗ 10 рд╕рд╛рд▓ рдкрд╣рд▓реЗ рд╢реБрд░реВ рд╣реБрдЖ рдерд╛, рдЗрд╕рд▓рд┐рдП рдпрд╣ 10 рд╕рд╛рд▓ рдкреБрд░рд╛рдиреА рддрдХрдиреАрдХреЛрдВ (рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдирд┐рд╡рд╛рд░реНрдп рддрдХрдиреАрдХ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рд░рд┐рдПрдХреНрдЯрд┐рд╡ рдпреВрдЖрдИ рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ (рдШреЛрд╖рдгрд╛рддреНрдордХ) рддрдХрдиреАрдХ рд▓рдЧрднрдЧ 8 рд╕рд╛рд▓ рдкрд╣рд▓реЗ рд╡реЗрдм рдХреЗ рд▓рд┐рдП рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд▓рдЧреА рдереАред рд░рд┐рдПрдХреНрдЯ 5 рд╕рд╛рд▓ рдкрд╣рд▓реЗ рд╕рд╛рдордиреЗ рдЖрдпрд╛ рдерд╛ рдФрд░ рдпрд╣ JSX рдХреЗ рд╕рд╛рде рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рдХреЛ рдореВрд▓ рд░реВрдк рд╕реЗ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдкрд╣рд▓рд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рд╢реАрд▓ рдврд╛рдВрдЪрд╛ рдерд╛ред Vue рдЕрдм рдирд╡реАрдирддрдо рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рд╢реАрд▓ рдврд╛рдВрдЪрд╛ рд╣реИ рдЬреЛ рдкреБрд░рд╛рдиреА 'рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рдХреЗ рдкреГрдердХреНрдХрд░рдг' рддрдХрдиреАрдХреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ JSX рдХрд╛ рднреА рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдореЛрдмрд╛рдЗрд▓ рдкрд░ рд╕реНрдкрдВрджрди рдирд╡реАрдирддрдо рд╣реИ рдФрд░ рдпрд╣ рд░рд┐рдПрдХреНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд░рд┐рдПрдХреНрдЯрд┐рд╡ рдлреНрд░реЗрдорд╡рд░реНрдХ рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ DSX рдХрд╛ рд▓рд╛рдн рдЙрдард╛ рд╕рдХрддрд╛ рд╣реИ рдЬреИрд╕реЗ Vue JSX рдХрд╛ рд▓рд╛рдн рдЙрдард╛рддрд╛ рд╣реИред Vue рдХреЛрдгреАрдп рдХреЛ рдорд╛рд░ рд░рд╣рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЕрддреНрдпрдзрд┐рдХ рд░рд╛рдп рдирд╣реАрдВ рджреЗ рд░рд╣рд╛ рд╣реИред

рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЕрдирд┐рд╡рд╛рд░реНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╡рд╣рд╛рдВ (рдпрджрд┐, рд▓реВрдк рдХреЗ рд▓рд┐рдП, рдЖрджрд┐) рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреА рд╣реИ, рддреЛ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдХрдордЬреЛрд░ рд╣реИред JSX рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдореЗрд░реЗ рд▓рд┐рдП 2 рдХрд╛ рд╕рдВрдпреЛрдЬрди рдХрд░рддрд╛ рд╣реИ, рд╡рд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рднрд╡рд┐рд╖реНрдп рд╣реИред

рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рдЬреИрд╕реЗ JSX рднрд╡рд┐рд╖реНрдп рдХрд╛ рддрд░реАрдХрд╛ рд╣реИ,

рдпрд╣ рд╣реИ !!!

рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЕрднреА рддрдХ рдЗрд╕реЗ рдХрд┐рд╕реА рднреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрд░реНрд╖рдг рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдврд╛рдВрдЪреЗ рдореЗрдВ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХрд╣реАрдВ рднреА рдкреЙрдк рдЕрдк рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИред

Vue JSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ

@cbazza

рдореБрдЭреЗ рдХреБрдЫ рднреА рд╕рд╣реА рдард╣рд░рд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рдореБрдЭреЗ рдкреВрд░рд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ DSX рд╣рд┐рдЯ рд╣реЛрдЧрд╛ рдФрд░ рдЕрдХреЗрд▓реЗ рдЗрд╕ рдЯрд┐рдХрдЯ рдкрд░ рд▓рдЧрднрдЧ 100 рд▓реЛрдЧ рдЗрд╕рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВред

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

DSX рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдЕрдВрдзрд╛рдзреБрдВрдз рддреЗрдЬрд╝ рд╣реИ рдФрд░ .dsx рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ .dart рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдкрд▓рдХ рдЭрдкрдХрдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рддреЗрдЬрд╝реА рд╕реЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЧрддрд┐ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ; рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдбреАрдПрд╕рдПрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдмрд┐рдирд╛ рджрд┐рдорд╛рдЧ рдХреЗ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдлреАрдЪрд░ рд╕рдорд╛рдирддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐, рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, рдЖрдкрдиреЗ рдЕрдм рддрдХ UI рдФрд░ рдРрдкреНрд╕ рдкрд░ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдЖрдХрд╛рд░ рдореЗрдВ рддреБрдЪреНрдЫ рд╣реИрдВред рдЧреИрд░ рддреБрдЪреНрдЫ рд▓реЛрдЧреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛? рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬреЛ рдХрд┐рдирд╛рд░реЗ рдХреЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЖрддреЗ рд╣реИрдВ? рд╕рд╛рде рд╣реА, рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд▓рдЧрдиреЗ рд╡рд╛рд▓рд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рд╣реА рдПрдХрдорд╛рддреНрд░ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рд╣реИ - рдХреЗрд╡рд▓ рдпрд╣ рддрдереНрдп рдХрд┐ рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдореИрдиреНрдпреБрдЕрд▓ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреА рдПрдХ рдФрд░ рдЪреЗрдХрд▓рд┐рд╕реНрдЯ рд╕реЗ рдЧреБрдЬрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, рдХрдИ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред

рдЖрдкрдиреЗ рдЕрднреА рддрдХ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб рдЬрд╛рд░реА рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЛрдИ рднреА рдЖрдкрдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ, рдЖрдкрдХреЗ рдирд┐рд╖реНрдХрд░реНрд╖реЛрдВ рдХреА рджреЛрдмрд╛рд░рд╛ рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдФрд░ рд╕реБрдзрд╛рд░реЛрдВ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, рдХреЛрдИ рднреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╢рдмреНрдж рдкрд░ рд▓реЗ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдФрд░ рдкреНрд░рджрд░реНрд╢рдирдХрд╛рд░реА рджреЛрдиреЛрдВ рд╣реИред

Vue JSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ

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

рд▓реЗрдХрд┐рди рдпрд╣ рдореЗрд░реЗ рд╕рдордЧреНрд░ рдмрд┐рдВрджреБ рдХреЗ рд▓рд┐рдП рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИред Vue рдЕрднреА рднреА рдПрдХ Javascript рдлреНрд░реЗрдорд╡рд░реНрдХ рд╣реИред рд╕реНрдкрдВрджрди рд╕рдмрд╕реЗ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдРрд╕реЗ рдХрдИ рдХрд╛рд░рдг рд╣реИрдВ рдЬреЛ JSX рдХреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдХреЗрдВрджреНрд░рд┐рдд рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд╕рдмрд╕реЗ рдирдИ рд╕рдмрд╕реЗ рдмрдбрд╝реА рдЪреАрдЬрд╝ рдмрдирд╛рддреЗ рд╣реИрдВ рдЬреЛ рдбрд╛рд░реНрдЯ + рд╕реНрдкрдВрджрди рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдирд╣реАрдВ рдХрд░реЗрдЧрд╛, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдХрдИ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

рдпрд╣ рд╣реИ !!!

рдЬрдм рддрдХ рдореИрдВ рдЗрд╕реЗ рдЧреИрд░-рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд┐рдХрд╛рд╕ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдкрдХрдбрд╝рддрд╛ рдирд╣реАрдВ рджреЗрдЦрддрд╛, рддрдм рддрдХ рдореИрдВ рд╕рдореНрдорд╛рдирдкреВрд░реНрд╡рдХ рдЕрд╕рд╣рдордд рд░рд╣реВрдВрдЧрд╛ред

Vue JSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ

Vue рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреА рдПрдХ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╡рд┐рдзрддрд╛ рд╣реИред JSX рдмрд╕ "рд╡рд╣рд╛рдБ" рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдкреНрд░рдореБрдЦ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдирд╣реАрдВ рд╣реИ
рдЖрдк рдЪрд╛рд╣реЗрдВ рддреЛ JSX рдХреЛ Angular рдореЗрдВ рдкреНрд▓рдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреЛрдИ рдирд╣реАрдВ рдХрд░рддрд╛

рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рдЬреИрд╕реЗ JSX рднрд╡рд┐рд╖реНрдп рдХрд╛ рддрд░реАрдХрд╛ рд╣реИ,
рдпрд╣ рд╣реИ !!!

рднрд╡рд┐рд╖реНрдп рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдбрд╝рд╛ рдЙрдореНрдореАрджрд╡рд╛рд░ рд╡реЗрдм-рдШрдЯрдХ рд╣реИред рдФрд░ рд╡реЗ рд╕реАрдзреЗ html рдореЗрдВ рдЙрд╕реА рддрд░рд╣ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ рдЬреИрд╕реЗ рдЖрдк Angular рдпрд╛ Vue рдХреЗ рд╕рдмрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рдореЗрдВ рдкрд╛рддреЗ рд╣реИрдВ

@andrewackerman

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

рдореИрдиреБрдЕрд▓ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд┐рд╕рдиреЗ рдХреБрдЫ рдХрд╣рд╛? рдХреНрдпрд╛ рдореИрдВрдиреЗ рдЦреБрдж рдХреЛ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдХрд┐ рдореИрдВ рдкреВрд░реНрдг рдирд┐рд░реНрдмрд╛рдз рдЖрдИрдбреАрдИ рдПрдХреАрдХрд░рдг (рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡реЛрддреНрддрдо рд╕рдВрднрд╡ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдиреБрднрд╡) рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдЖрдкрдиреЗ рдЕрднреА рддрдХ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб рдЬрд╛рд░реА рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЛрдИ рднреА рдЖрдкрдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ, рдЖрдкрдХреЗ рдирд┐рд╖реНрдХрд░реНрд╖реЛрдВ рдХреА рджреЛрдмрд╛рд░рд╛ рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдФрд░ рд╕реБрдзрд╛рд░реЛрдВ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред

рдЗрд╕рдХрд╛ DSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рд╕реЗ рдХреНрдпрд╛ рд▓реЗрдирд╛-рджреЗрдирд╛ рд╣реИ? рдореИрдВрдиреЗ JSX рдХрд╛ 2 рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреА рдХрдо рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рдХреНрдпрд╛ рдЖрдкрдХреЛ рдбрд╛рд░реНрдЯ рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдбрд╛рд░реНрдЯ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЗ рд╕реЛрд░реНрд╕ рдХреЛрдб рдХреЛ рджреЗрдЦрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ?

рдореИрдВ рдЬреЛ рдХрд╣реВрдВрдЧрд╛ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рднреА рдореИрдВрдиреЗ рдХрднреА рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ - рд▓реЛрдЧ рд░реЗрдВрдбрд░ + рдЬреЗрдПрд╕рдПрдХреНрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдкрд░ .vue рджреГрд╖реНрдЯрд┐рдХреЛрдг (рдЯреЗрдореНрдкрд▓реЗрдЯ-рд╕реНрдХреНрд░рд┐рдкреНрдЯ-рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ) рдХреЛ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВред

JSX рдПрдХ рдирдпрд╛ рдЕрддрд┐рд░рд┐рдХреНрдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдлреИрд▓рдиреЗ рдореЗрдВ рд╕рдордп рд▓рдЧреЗрдЧрд╛ рд▓реЗрдХрд┐рди рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБ рдпрд╣ рд╣реИ рдХрд┐ Vue рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ 'рд╕рд╣реА рддрд░реАрдХреЗ рдФрд░ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХреЗ' рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдП рдмрд┐рдирд╛ рдЕрдиреНрдп рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЪреАрдЬреЛрдВ рдХреЛ Vue рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

Vue рдЕрднреА рднреА рдПрдХ Javascript рдлреНрд░реЗрдорд╡рд░реНрдХ рд╣реИред рд╕реНрдкрдВрджрди рд╕рдмрд╕реЗ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдирд╣реАрдВ рд╣реИред

Riiiiight, рдЗрд╕рд▓рд┐рдП JSX рдХреЗ рдмрдЬрд╛рдп рдЖрдк рд╕реНрдкрдВрджрди рдХреЗ рд╕рд╛рде DSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

@rrousselGit

рднрд╡рд┐рд╖реНрдп рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдбрд╝рд╛ рдЙрдореНрдореАрджрд╡рд╛рд░ рд╡реЗрдм-рдШрдЯрдХ рд╣реИред

рд╡реЗрдм рдШрдЯрдХ рдЬрд╝реЛрдмреА рд╣реИрдВ, рдореГрдд рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдЪрд▓ рд░рд╣реЗ рд╣реИрдВ; рд╡реЗ рдХрдирд╛рдбрд╛ рдореЗрдВ рдХрдВрдЧрд╛рд░реБрдУрдВ рдХреА рддрд░рд╣ рд╡реНрдпрд╛рдкрдХ рд╣реИрдВред рдореИрдВ рдХрдИ рджрд┐рдиреЛрдВ рддрдХ рдЪрд▓ рд╕рдХрддрд╛ рдерд╛ рд▓реЗрдХрд┐рди рдкрдЪрд╛рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП...
https://dmitriid.com/blog/2017/03/the-broken-promise-of-web-components/

@cbazza

рдореИрдиреБрдЕрд▓ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд┐рд╕рдиреЗ рдХреБрдЫ рдХрд╣рд╛? рдХреНрдпрд╛ рдореИрдВрдиреЗ рдЦреБрдж рдХреЛ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдХрд┐ рдореИрдВ рдкреВрд░реНрдг рдирд┐рд░реНрдмрд╛рдз рдЖрдИрдбреАрдИ рдПрдХреАрдХрд░рдг (рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡реЛрддреНрддрдо рд╕рдВрднрд╡ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдиреБрднрд╡) рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдЖрдкрдиреЗ рдпрд╣ рднреА рдХрд╣рд╛ рдХрд┐ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдлрд╝реНрд▓рдЯрд░/рдбрд╛рд░реНрдЯ рдЯреАрдо рд╕реЗ рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рд╕рдорд░реНрдерди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдХреНрдпрд╛ рдореИрдВ рдЗрд╕рдореЗрдВ рдЧрд▓рдд рд╣реВрдБ?

рдЗрд╕рдХрд╛ DSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рд╕реЗ рдХреНрдпрд╛ рд▓реЗрдирд╛-рджреЗрдирд╛ рд╣реИ? рдореИрдВрдиреЗ JSX рдХрд╛ 2 рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреА рдХрдо рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред

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

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

рдореИрдВ рдЖрдк рдкрд░ рдЭреВрда рдмреЛрд▓рдиреЗ рдпрд╛ рдХреБрдЫ рднреА рдХрд░рдиреЗ рдХрд╛ рдЖрд░реЛрдк рдирд╣реАрдВ рд▓рдЧрд╛ рд░рд╣рд╛ рд╣реВрдВ, рдореИрдВ рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ JSX рдиреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдХрд╛ рдПрдХ рд╕реНрддрд░ рдЕрд░реНрдЬрд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ DSX рдиреЗ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдЕрдЧрд░ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕рдХреЗ рд╕рд╛рде рдЫреЗрдбрд╝рдЫрд╛рдбрд╝ рдирд╣реАрдВ рдХрд░рдиреЗ рджреЗрдВрдЧреЗ рддреЛ рдЖрдк рдХреБрдЫ рд╕рд┐рд░ рдХреИрд╕реЗ рдореЛрдбрд╝реЗрдВрдЧреЗ?

JSX рдПрдХ рдирдпрд╛ рдЕрддрд┐рд░рд┐рдХреНрдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдлреИрд▓рдиреЗ рдореЗрдВ рд╕рдордп рд▓рдЧреЗрдЧрд╛ рд▓реЗрдХрд┐рди рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБ рдпрд╣ рд╣реИ рдХрд┐ Vue рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ 'рд╕рд╣реА рддрд░реАрдХреЗ рдФрд░ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХреЗ' рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдП рдмрд┐рдирд╛ рдЕрдиреНрдп рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЪреАрдЬреЛрдВ рдХреЛ Vue рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

JSX рд▓рдЧрднрдЧ 2 рд╡рд░реНрд╖реЛрдВ рд╕реЗ Vue рдореЗрдВ рд╣реИред рдФрд░ рд╕реНрд╡рдпрдВ Vue рдХреЗ рд╡рд┐рдкрд░реАрдд, JSX рдПрдХ рдкреВрд░реНрд╡-рдореМрдЬреВрджрд╛ рддрдХрдиреАрдХ рд╣реИ рдЬрд┐рд╕реЗ рдХрд┐рд╕реА рдкрд░рд┐рдЪрдп рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдПред рдЕрдЧрд░ JSX рддреВрдлрд╛рди рд╕реЗ Vue.js рдХреА рджреБрдирд┐рдпрд╛ рдореЗрдВ рд▓реЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ рдерд╛, рддреЛ рдореИрдВ рдорджрдж рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдм рддрдХ рдРрд╕рд╛ рдХрд░ рдЪреБрдХрд╛ рд╣реЛрддрд╛ред (рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдпрджрд┐ рдпрд╣ рдХреЛрдИ рд╕рдВрдХреЗрдд рд╣реИ рдХрд┐ рдЬрд┐рддрдиреЗ рд▓реЛрдЧ рджрд╛рд╡рд╛ рдХрд░рддреЗ рд╣реИрдВ, рдЙрддрдиреЗ рд▓реЛрдЧ рдлрд╝реНрд▓рдЯрд░ рдореЗрдВ JSX рдХреЗ рд▓рд┐рдП рд╕рдВрдШрд░реНрд╖ рдХрд░ рд░рд╣реЗ рд╣реИрдВред)

Riiiiight, рдЗрд╕рд▓рд┐рдП JSX рдХреЗ рдмрдЬрд╛рдп рдЖрдк рд╕реНрдкрдВрджрди рдХреЗ рд╕рд╛рде DSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

JSX рдФрд░ DSX рдПрдХ рд╣реА рд╡рд╛рдХреНрдпрд╛рддреНрдордХ рдЕрд╡рдзрд╛рд░рдгрд╛ рд╣реИрдВред рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐, рдЬрд╣рд╛рдВ JSX рдХреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреИрд╕реА рдХрдордЬреЛрд░-рдЯрд╛рдЗрдк рдХреА рдЧрдИ рдЧрддрд┐рд╢реАрд▓ рднрд╛рд╖рд╛ рдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, DSX рдХреЛ рдбрд╛рд░реНрдЯ рдЬреИрд╕реА рджреГрдврд╝рддрд╛ рд╕реЗ рдЯрд╛рдЗрдк рдХреА рдЧрдИ рд╕реНрдерд┐рд░ рднрд╛рд╖рд╛ рдкрд░ рдмрдирд╛рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдбреАрдПрд╕рдПрдХреНрд╕ рдХреЛ рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХреЛ рдпрд╣ рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╣ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ "рдЬреЗрдПрд╕рдПрдХреНрд╕ рдлреЙрд░ рдлрд╝реНрд▓рдЯрд░" рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рднреА рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдФрд░ рдпрд╣ рдбреАрдПрд╕рдПрдХреНрд╕ рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ _ingenious_ рд╕рдВрд╢реЛрдзрдиреЛрдВ рдХреЛ рд▓реЗрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдпрд╣ рджрд╛рд╡рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдлреВрд▓рд╛ рд╣реБрдЖ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╣реИред

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

рдФрд░ рдЙрд╕ рдкрдврд╝рдиреЗ рдХреЗ рдЦрдВрдбрди рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ рддреЛ DSX рд╕рд┐рд░реНрдл рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИ", рддреЛ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЦреБрдж рдХреЛ рдХрдо рдмреЗрдЪ рд░рд╣реЗ рд╣реИрдВред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рдЕрдЧрд░ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд┐рд░реНрдл "рдПрдХ рд╡рд┐рдХрд▓реНрдк" рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рддрдм рднреА рдЗрд╕реЗ рдЯреЗрдмрд▓ рдкрд░ рдХреБрдЫ рд▓рд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдЬреЛ рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордирд╛рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдЖрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХрд╣рд╛ рдерд╛ рдХрд┐ DSX JSX рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЬреЛ рд▓реЛрдЧ рдХреЗрд╡рд▓ JSX рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЙрдиреНрд╣реЗрдВ рд╡рд╣ рдирд╣реАрдВ рдорд┐рд▓реЗрдЧрд╛ рдЬреЛ рд╡реЗ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд▓реЛрдЧреЛрдВ рджреНрд╡рд╛рд░рд╛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рдЬреЗрдПрд╕рдПрдХреНрд╕ рдЬреИрд╕реА рдЕрдкреАрд▓" рд╕реЗ рдкрд░реЗ рдХреБрдЫ рдареЛрд╕ рдХрд╛рд░рдг рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред

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

рд╡реЗрдм рдШрдЯрдХ рдЬрд╝реЛрдмреА рд╣реИрдВ, рдореГрдд рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдЪрд▓ рд░рд╣реЗ рд╣реИрдВ; рд╡реЗ рдХрдирд╛рдбрд╛ рдореЗрдВ рдХрдВрдЧрд╛рд░реБрдУрдВ рдХреА рддрд░рд╣ рд╡реНрдпрд╛рдкрдХ рд╣реИрдВред рдореИрдВ рдХрдИ рджрд┐рдиреЛрдВ рддрдХ рдЪрд▓ рд╕рдХрддрд╛ рдерд╛ рд▓реЗрдХрд┐рди рдкрдЪрд╛рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП...

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

@andrewackerman

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рдпрд╛рд░ рдореЗрд░реЗ рдкрд╛рд╕ рд╕рдордп рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рдЕрдВрддрд╣реАрди рдмрд╣рд╕ рдХрд░реВрдВ рдФрд░ рдЬреЛ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдХрд╣рд╛ рдерд╛ рдЙрд╕реЗ рдмрд╛рд░-рдмрд╛рд░ рджреЛрд╣рд░рд╛рдКрдВ; рд╣рдо рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рд╕рдордЭреМрддрд╛ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЗ FLUI рдХреЗ рд╕рд╛рде рд╢реБрднрдХрд╛рдордирд╛рдПрдБред

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

рдСрдирд▓рд╛рдЗрди DSX рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдлрд░рд╡рд░реА 2018 рд╕реЗ рд▓рд╛рдЗрд╡ рд╣реИ рдФрд░ рдХреЛрдИ рднреА рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рдХреЗ рд▓рд┐рдП рдореЗрд░реА рдмрд╛рдд рдорд╛рдирдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред 'рд╕рдВрдХрд▓рди' рджрдмрд╛рдПрдВ рдФрд░ рдпрд╣ рдмрд╛рдПрдВ рдкреИрдирд▓ рдкрд░ рдЬреЛ рд▓рд┐рдЦрд╛ рд╣реИ рдЙрд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкрд░рд┐рдгрд╛рдо рджрд╛рдПрдВ рдкреИрдирд▓ рдкрд░ рд░рдЦрддрд╛ рд╣реИред рдбреАрдмрдЧрд░ рдЦреЛрд▓реЗрдВ рдФрд░ рдЖрдк рдПрдПрд╕рдЯреА рд▓рд┐рдЦрд╛ рд╣реБрдЖ рджреЗрдЦреЗрдВрдЧреЗред
https://spark-heroku-dsx.herokuapp.com/index.html

рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐, рдЬрд╣рд╛рдВ JSX рдХреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреИрд╕реА рдХрдордЬреЛрд░-рдЯрд╛рдЗрдк рдХреА рдЧрдИ рдЧрддрд┐рд╢реАрд▓ рднрд╛рд╖рд╛ рдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, DSX рдХреЛ рдбрд╛рд░реНрдЯ рдЬреИрд╕реА рджреГрдврд╝рддрд╛ рд╕реЗ рдЯрд╛рдЗрдк рдХреА рдЧрдИ рд╕реНрдерд┐рд░ рднрд╛рд╖рд╛ рдкрд░ рдмрдирд╛рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рдУрдУрдкреА (рдСрдмреНрдЬреЗрдХреНрдЯ рдУрд░рд┐рдПрдВрдЯреЗрдб рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ) рдЕрд╡рдзрд╛рд░рдгрд╛ рдФрд░ 'рдХрдХреНрд╖рд╛рдУрдВ' рдХреЗ рд▓рд┐рдП рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЬреИрд╕реЗ рдЗрд╕рд╕реЗ рдХреЛрдИ рдмрдбрд╝рд╛ рдЕрдВрддрд░ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИред рдпрд╣ рдЯрд╛рдЗрдкрд▓реЗрд╕ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпрд╛ рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рдбрд╛рд░реНрдЯ рдореЗрдВ рд▓рдЧрднрдЧ рд╕рдорд╛рди рд╣реИ; рд╡рд╣реА 'if' рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ, 'for' рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ, рдЖрджрд┐ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ

рдЗрд╕реЗ рдЕрднреА рднреА рдореЗрдЬ рдкрд░ рдХреБрдЫ рд▓рд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдЬреЛ рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордирд╛рдиреЗ рдЬрд╛ рд░рд╣реА рд╣реИред

рдЬрд╛рд╣рд┐рд░рд╛ рддреМрд░ рдкрд░ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ рдЯрд┐рдХрдЯ рдореЗрдВ 100 рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИ; рдФрд░ рдпрд╣ рд╕рд┐рд░реНрдл рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ 100 рдЧреБрдирд╛ рдмрдбрд╝рд╛ рд╣реИ; рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдлреА рдЕрдЪреНрдЫрд╛ред

@cbazza

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рдпрд╛рд░ рдореЗрд░реЗ рдкрд╛рд╕ рд╕рдордп рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рдЕрдВрддрд╣реАрди рдмрд╣рд╕ рдХрд░реВрдВ рдФрд░ рдЬреЛ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдХрд╣рд╛ рдерд╛ рдЙрд╕реЗ рдмрд╛рд░-рдмрд╛рд░ рджреЛрд╣рд░рд╛рдКрдВ; рд╣рдо рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рд╕рдордЭреМрддрд╛ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЗ FLUI рдХреЗ рд╕рд╛рде рд╢реБрднрдХрд╛рдордирд╛рдПрдБред

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

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

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

рдореИрдВрдиреЗ рдпрд╣ рднреА рдирд╣реАрдВ рджреЗрдЦрд╛ рдХрд┐ рд╡рд╣ рд▓рд┐рдВрдХ рдПрдХ рдХрд╛рдордХрд╛рдЬреА рдЙрджрд╛рд╣рд░рдг рдерд╛ред рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдХрднреА рдЙрд╕рдХреЗреЛрдХреВрдкреНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рд╕рд╛рд░ рдпрд╛ рдХреБрдЫ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдореБрдЭ рдкрд░ рд╣реИред :рдкреА

(рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рдпрд╣ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ рдСрдирд▓рд╛рдЗрди рд╕реИрдВрдбрдмреЙрдХреНрд╕ рдХреЗ рд╕рд╛рде рдЫреЗрдбрд╝рдЫрд╛рдбрд╝ рдХрд░рдирд╛ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рдХреЛ рдЕрдзрд┐рдХ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд╕рдорд╛рди рдирд╣реАрдВ рд╣реИред)

рдУрдУрдкреА (рдСрдмреНрдЬреЗрдХреНрдЯ рдУрд░рд┐рдПрдВрдЯреЗрдб рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ) рдЕрд╡рдзрд╛рд░рдгрд╛ рдФрд░ 'рдХрдХреНрд╖рд╛рдУрдВ' рдХреЗ рд▓рд┐рдП рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдЬреИрд╕реЗ рдЗрд╕рд╕реЗ рдХреЛрдИ рдмрдбрд╝рд╛ рдЕрдВрддрд░ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИред рдпрд╣ рдЯрд╛рдЗрдкрд▓реЗрд╕ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпрд╛ рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рдбрд╛рд░реНрдЯ рдореЗрдВ рд▓рдЧрднрдЧ рд╕рдорд╛рди рд╣реИ; рд╡рд╣реА 'if' рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ, 'for' рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ, рдЖрджрд┐ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ

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

рдЬрд╛рд╣рд┐рд░ рддреМрд░ рдкрд░ рдпрд╣ рдЗрд╕ рдЯрд┐рдХрдЯ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА 100 рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИ; рдФрд░ рдпрд╣ рд╕рд┐рд░реНрдл рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ 100 рдЧреБрдирд╛ рдмрдбрд╝рд╛ рд╣реИ; рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдлреА рдЕрдЪреНрдЫрд╛ред

рдлрд┐рд░, рдпрд╣ 100 рд▓реЛрдЧ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ "рдбрд╛рд░реНрдЯ рдХреЛрдб рдХреЗ рдЕрдВрджрд░ JSX- рдЬреИрд╕реЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ" рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЙрдард╛рдпрд╛ред рдЙрдиреНрд╣реЛрдВрдиреЗ рд╡реЛрдЯ рджрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ _JSX_ рдЪрд╛рд╣рддреЗ рдереЗ, рдФрд░ рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, DSX JSX рдирд╣реАрдВ рд╣реИред рддреЛ рд╡реЗ рдФрд░ рдХреНрдпреЛрдВ DSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ? рдХреНрдпреЛрдВрдХрд┐ рдЗрдирд▓рд╛рдЗрди рдПрдХреНрд╕рдПрдордПрд▓ рдЬреИрд╕реА рдпреВрдЖрдИ рдШреЛрд╖рдгрд╛ "рднрд╡рд┐рд╖реНрдп" рд╣реИ? рдлрд┐рд░ рд╕реЗ, рдореИрдВ рдЗрд╕реЗ рдирд╣реАрдВ рджреЗрдЦрддрд╛ред

рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╣реА JSX рдХреЛ Vue рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ рдФрд░ рдХреЛрдИ рдХрд░реНрд╖рдг рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдВрдХ рдХрд┐рдП рдЧрдП рд╡реЗрдм рдХрдВрдкреЛрдиреЗрдВрдЯреНрд╕ рдЖрд▓реЗрдЦ рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рджреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╡рд┐рдХрд▓реНрдк рднреА рд╣реИрдВ: рдЗрдиреНрдлрд░реНрдиреЛ рдФрд░ рдкреНрд░реАрдПрдХреНрдЯред рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдореИрдВ рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ, рдЬреЗрдПрд╕рдПрдХреНрд╕-рдЬреИрд╕реЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдореВрд▓ рд░реВрдк рд╕реЗ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рд╡реЗ рджреЛрдиреЛрдВ рдЬреЗрдПрд╕-рдЖрдзрд╛рд░рд┐рдд рд╡реЗрдм-рдРрдк рд╡рд┐рдХрд╛рд╕ рджреБрдирд┐рдпрд╛ рдореЗрдВ рдХрд┐рд╕реА рднреА рддрд░рд╣ рдХреА рд▓рд╣рд░реЗрдВ рдмрдирд╛рдиреЗ рдореЗрдВ рдЕрд╕рдлрд▓ рд░рд╣реЗ рд╣реИрдВред рдореБрдЭреЗ рд╕рдЪ рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рд░рд┐рдПрдХреНрдЯ рдореЗрдВ JSX рдХреЛ рдкрд╕рдВрдж рдХрд░рдиреЗ рд╡рд╛рд▓реЗ _рдмрд┐рд▓реНрдХреБрд▓ рдХреНрдпреЛрдВ_ рд▓реЛрдЧреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд▓рдВрдмреА рдФрд░ рдХрдбрд╝реА рдирдЬрд╝рд░ рд░рдЦрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕рднреА рдЦрд╛рддреЛрдВ рдореЗрдВ рдпрд╣ рд╕рд┐рд░реНрдл JSX рдХреЗ рдХрд╛рд░рдг рд╣реА рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИред рдпрджрд┐ _рдЙрд╕ рдкреНрд░рд╢реНрди рдХрд╛ рдЙрддреНрддрд░ рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рд╣рдо "рднрд╡рд┐рд╖реНрдп" рдирд╡рд╛рдЪрд╛рд░реЛрдВ рдХреА рдУрд░ рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ, рди рдХрд┐ рдХреЗрд╡рд▓ рдЙрд╕ рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдЬрд┐рд╕реЗ рд╣рдо рд╣рд░ рдЬрдЧрд╣ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ, рд╣рдо рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рд╕реЛрдЪрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЗрд╕ рдЪрд░реНрдЪрд╛ рдореЗрдВ рдирд┐рд╡реЗрд╢ рдХреА рдЧрдИ рдКрд░реНрдЬрд╛ рдХреА рдорд╛рддреНрд░рд╛ рдФрд░ рд╡рд░реНрддрдорд╛рди рдврд╛рдВрдЪреЗ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдЕрдЪреНрдЫрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рдерд╛, рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдореБрдЭреЗ рджреБрдЦ рд╣реЛрддрд╛ рд╣реИред

@andrewackerman

рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐, рдЬрд╣рд╛рдВ JSX рдХреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреИрд╕реА рдХрдордЬреЛрд░-рдЯрд╛рдЗрдк рдХреА рдЧрдИ рдЧрддрд┐рд╢реАрд▓ рднрд╛рд╖рд╛ рдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, DSX рдХреЛ рдбрд╛рд░реНрдЯ рдЬреИрд╕реА рджреГрдврд╝рддрд╛ рд╕реЗ рдЯрд╛рдЗрдк рдХреА рдЧрдИ рд╕реНрдерд┐рд░ рднрд╛рд╖рд╛ рдкрд░ рдмрдирд╛рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде JSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

@escamoteur рдмрд┐рд▓реНрдХреБрд▓!

@escamoteur рдореИрдВ рдЗрд╕ рдкрд░ рдЖрдкрдХреЗ рд╕рд╛рде рд╣реВрдВред _рдж 100._

@ рдмреЗрд╕реЛрдиреЛрд╡

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде JSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

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

@andrewackerman
рдЖрдкрдХреЛ рдХреНрдпреЛрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдорд╛рдпрдиреЗ рд░рдЦрддрд╛ рд╣реИ? JSX рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИред рдпрд╣ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рднрд╛рд╖рд╛ рдЕрдЬреНрдЮреЗрдпрд╡рд╛рджреА рд╣реИред рдпрд╣рд╛рдБ рджреЗрдЦреЛред рдпрд╣ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рдареАрдХ рд╣реИ, рдпрд╣ JSX рдХреЗ рд╕рд╛рде рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ? (рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЗрд╕рдХрд╛ рдХреЛрдИ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдирд╣реАрдВ рд╣реИ (рдЕрднреА рддрдХ))

рдФрд░.. рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ... рдкреНрд░рд╡рд╛рд╣ fb рд╕реЗ рднреА рдЖрддрд╛ рд╣реИ:

рдлреНрд▓реЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдерд┐рд░ рдЯрд╛рдЗрдкрдЪреЗрдХрд░ рд╣реИред

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

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

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

рд╣рд╛рдБ, рдпрд╣рд╛рдБ рдирдлрд░рдд рдХреА рдорд╛рддреНрд░рд╛ рдорд╣рд╛рдХрд╛рд╡реНрдп рд╣реИ, рдмрд╕ рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
3587 рдЦреБрд▓реЗ рдЯрд┐рдХрдЯ рд╣реИрдВ, рдпрджрд┐ рдЖрдк рдЙрдиреНрд╣реЗрдВ "рдЕрдВрдЧреВрдареЗ рдиреАрдЪреЗ" рд╕реЗ рдХреНрд░рдордмрджреНрдз рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдЖрдкрдХреЛ рдорд┐рд▓рддрд╛ рд╣реИ
1 (рдпрд╣ рд╡рд╛рд▓рд╛) 57 "рдЕрдВрдЧреВрдареЗ рдиреАрдЪреЗ" рдХреЗ рд╕рд╛рде
3586 (рдЕрдиреНрдп рдЯрд┐рдХрдЯ) 1 рдпрд╛ рдЙрд╕рд╕реЗ рдХрдо "рдЕрдВрдЧреВрдареЗ рдиреАрдЪреЗ" рдХреЗ рд╕рд╛рде

@ рдмреЗрд╕реЛрдиреЛрд╡

рдЖрдкрдХреЛ рдХреНрдпреЛрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдорд╛рдпрдиреЗ рд░рдЦрддрд╛ рд╣реИ? JSX рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИред рдпрд╣ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рднрд╛рд╖рд╛ рдЕрдЬреНрдЮреЗрдпрд╡рд╛рджреА рд╣реИред рдЗрдзрд░ рджреЗрдЦреЛред рдпрд╣ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рдареАрдХ рд╣реИ, рдпрд╣ JSX рдХреЗ рд╕рд╛рде рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ? (рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЗрд╕рдХрд╛ рдХреЛрдИ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдирд╣реАрдВ рд╣реИ (рдЕрднреА рддрдХ))

рдпрд╣ UI _in Javascript_ (рдЗрд╕рд▓рд┐рдП рдирд╛рдо рдХрд╛ "JS" рднрд╛рдЧ) рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИред рдФрд░ рдирд╣реАрдВ, рдЪреВрдВрдХрд┐ рдпрд╣ рдПрдХ рдЗрдирд▓рд╛рдЗрди рдбреАрдПрд╕рдПрд▓ рд╣реИ, рдпрд╣ _not_ рднрд╛рд╖рд╛-рдЕрдЬреНрдЮреЗрдпрд╡рд╛рджреА рд╣реИред рдФрд░ рдЕрдЧрд░ рдРрд╕рд╛ рдерд╛ рднреА, рддреЛ рдпрд╣ рдЕрднреА рднреА рдЗрд╕реЗ "рдмреЗрд╣рддрд░ рд╡рд┐рдХрд▓реНрдк" рдирд╣реАрдВ рдмрдирд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╡рд╣рд╛рдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рднрд╛рд╖рд╛-рдЕрдЬреНрдЮреЗрдпрд╡рд╛рджреА рдбреАрдПрд╕рдПрд▓ рд╣реИрдВ рдЬреЛ рдпреВрдЖрдИ рдШреЛрд╖рдгрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рдЕрдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдВрдЧреЗред

рдФрд░.. рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ... рдкреНрд░рд╡рд╛рд╣ fb рд╕реЗ рднреА рдЖрддрд╛ рд╣реИ:

рдлреНрд▓реЛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рддрд░рд╣ рд╣реА рд╣реИ: рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдерд┐рд░ рдкреНрд░рдХрд╛рд░ рдХреА рдЬрд╛рдБрдЪ рдкреНрд░рдгрд╛рд▓реАред рдпрд╣ рдПрдХ рд░рд┐рдПрдХреНрдЯ рдЯреВрд▓ рдирд╣реАрдВ рд╣реИ, рди рд╣реА рд░рд┐рдПрдХреНрдЯ рдХреЛ рдЗрд╕рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд░рд┐рдПрдХреНрдЯ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдПрдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИ, рдФрд░ JSX рдХреЛ рд░рд┐рдПрдХреНрдЯ рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд░рд┐рдПрдХреНрдЯ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдЬреЛ рднреА рджреНрд╡рд┐рддреАрдпрдХ рдЙрдкрдХрд░рдг рдФрд░ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдПрдБ рдкреЗрд╢ рдХреА рдЬрд╛рддреА рд╣реИрдВ, рд╡реЗ рдЕрдВрддрддрдГ рд░рд┐рдПрдХреНрдЯ + рдЬреЗрдПрд╕рдПрдХреНрд╕ рдЗрдВрдЯрд░рдСрдкрд░реЗрдмрд┐рд▓рд┐рдЯреА рдХреЗ рд▓рд┐рдП рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИрдВред

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

рдореИрдВрдиреЗ JSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░рд╛рдп рд╣реИ, рдореИрдВрдиреЗ рдЬрд╛рдирдмреВрдЭрдХрд░ рдЙрди рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдЗрд╕ рдЪрд░реНрдЪрд╛ рд╕реЗ рдмрд╛рд╣рд░ рдХрд░ рджрд┐рдпрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдХреНрдпрд╛ рдЖрдкрдиреЗ рдореЗрд░реА рдкрд┐рдЫрд▓реА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рдкрдврд╝рд╛ рдерд╛, рдЖрдкрдХреЛ рдкрддрд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдореИрдВрдиреЗ рд░рд┐рдПрдХреНрдЯ рдореЗрдВ UI рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдХреНрд░рд╛рдВрддрд┐рдХрд╛рд░реА рдмрджрд▓рд╛рд╡ рдХреЗ рд▓рд┐рдП JSX рдХреА рдкреНрд░рд╢рдВрд╕рд╛ рдХреА рдереАред рд╕рдВрдкреВрд░реНрдг рд░реВрдк рд╕реЗ JSX рдХреЗ рдмрд╛рдЬрд╛рд░ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВрдиреЗ рдЬреЛ рдХреБрдЫ рд╣рд▓реНрдХреА-рдлреБрд▓реНрдХреА рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдХреА рд╣реИрдВ, рдЙрдирдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореЗрд░реЗ рддрд░реНрдХ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ JSX _in Flutter_ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИрдВред рдФрд░ рдЙрд╕ рд╡рд┐рд╖рдп рдкрд░, DSX рдХреА рдкреНрд░рднрд╛рд╡рд╢реАрд▓рддрд╛ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЖрдзрд╛рд░ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдХреЗрд╡рд▓ рдпрд╣ рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ JSX рдХреЛ рдЕрдиреНрдп рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдкрд░реАрдХреНрд╖рд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕рдВрдХреЗрдд рдирд╣реАрдВ рджреЗрддреА рд╣реИред

рдЬрдм рддрдХ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдЖрдк рд╣рд░ рджрд┐рди рднреА DSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рд╣рдореЗрдВ Flutter рдореЗрдВ DSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд▓рд╛рднреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ?

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

_рдореИрдВ рдпрд╣реА рдХрд░ рд░рд╣рд╛ рд╣реВрдВред_ DSX рдХреЛ JSX рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП UI рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред JSX рдореЗрдВ рдкреНрд░рдореБрдЦ рдбрд┐рдЬрд╝рд╛рдЗрди рддрддреНрд╡ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рдбрд╛рд░реНрдЯ рдФрд░ рдлрд╝реНрд▓рдЯрд░ рд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рд╡рд╛рддрд╛рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдерд╛ред _DSX рдХреЗ рд╕рдлрд▓ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрди рдорддрднреЗрджреЛрдВ рдХреЛ рджреВрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред_ рдореИрдВ рдПрдХ _hater_ рдирд╣реАрдВ рд╣реВрдВред рдореИрдВ рд░рдЪрдирд╛рддреНрдордХ рдЪрд░реНрдЪрд╛ рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдиреЗ рдФрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкреНрд░рд╢реНрди рдкреВрдЫрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдлрд┐рд░ рднреА рдореБрдЭреЗ рдЬреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдВ рдорд┐рд▓ рд░рд╣реА рд╣реИрдВ, рд╡реЗ рд╕рдмреНрдЬреЗрдХреНрдЯрд┐рд╡ рдЯреЙрдЯреЛрд▓реЙрдЬреА ("рдЬреЗрдПрд╕рдПрдХреНрд╕ рдЕрдЪреНрдЫрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рднрд╡рд┐рд╖реНрдп рд╣реИ, рдФрд░ рдпрд╣ рднрд╡рд┐рд╖реНрдп рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ"), рдорд╣рддреНрд╡рдкреВрд░реНрдг рдбрд┐рдЬрд╛рдЗрди рдмрд┐рдВрджреБрдУрдВ рдХреА рдмрд░реНрдЦрд╛рд╕реНрддрдЧреА рд╣рд╛рде рд╕реЗ рд▓рд╣рд░рд╛рддреЗ рд╣реБрдП ("рдбреАрдПрд╕рдПрдХреНрд╕ рдХреЛ рдЦрд╛рддреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ" рдЬреЗрдПрд╕ рдФрд░ рдбрд╛рд░реНрдЯ рдХреЗ рдмреАрдЪ рдорддрднреЗрджреЛрдВ рдХреЗ рд▓рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рдХреЛрдИ рднреА рдирд╣реАрдВ рд╣реИ"), рдпрд╛ рд╕рд┐рд░реНрдл рд╕рд╛рджрд╛ рд╢рддреНрд░реБрддрд╛рдкреВрд░реНрдг ("рдЖрдкрдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЬреЗрдПрд╕рдПрдХреНрд╕ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ рдЗрд╕рд▓рд┐рдП рдбреАрдПрд╕рдПрдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рдмрдВрдж рдХрд░реЗрдВ")ред

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

рдореЗрд░рд╛ рдПрдХрдорд╛рддреНрд░ рдбрд░ рдпрд╣ рд╣реИ рдХрд┐ JSX рдХреЗ рд▓рд┐рдП рдпрд╣ рд╕рдм рдмрд┐рдирд╛ рд╢рд░реНрдд рдкреНрдпрд╛рд░ рд▓реЛрдЧреЛрдВ рдХреЛ DSX рдХреЛ рдирд┐рд╖реНрдкрдХреНрд╖ рд░реВрдк рд╕реЗ рджреЗрдЦрдиреЗ рд╕реЗ рд░реЛрдХ рд░рд╣рд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд▓реЛрдЧ рдлрд╝реНрд▓рдЯрд░ рдореЗрдВ JSX рдЬреИрд╕рд╛ рдХреБрдЫ рдХреНрдпреЛрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдФрд░ рдореИрдВ рд╕рдВрдмрдВрдзрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдБ - рдореЗрд░реА рд░рд╛рдп рд╣реИ рдХрд┐ рдлрд╝реНрд▓рдЯрд░ рдХреЛ рдПрдХ рд╕рдорд░реНрдкрд┐рдд UI DSL рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рдореБрдЭреЗ рдлрд╝реНрд▓реВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдбреАрдПрд╕рдПрдХреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдХреЗрд╡рд▓ рд╡рд╣реА рд▓реЛрдЧ рд╣реИрдВ рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреА рдЪреАрдЬреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рдирд╣реАрдВ рд╣реИ, рддреЛ рдпрд╣ рдЕрд╕рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред

рдХреНрдпрд╛ рд╣рдо рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдЪрд░реНрдЪрд╛ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореБрдЭреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЦреБрд▓рд╛ рд░рдЦрдиреЗ рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг рдирд╣реАрдВ рджрд┐рдЦрддрд╛ред

рдбрд╛рд░реНрдЯ рдЯреАрдо рдиреЗ рдХрд╣рд╛ рдХрд┐ рдЙрдирдХреА рдЕрдиреНрдп рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдПрдВ рд╣реИрдВред рдФрд░ рд╕рдорд░реНрдердХ JSX рдкрдХреНрд╖ рд╕реНрд╡реЗрдЪреНрдЫрд╛ рд╕реЗ рдЕрдкрдирд╛ DSX рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИ

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

рдлрд┐рд░ рд╕рдорд╛рдЬ рдХреЛ рдЕрдкрдирд╛ рдХрд╛рдо рдХрд░рдиреЗ рджреЗрдВред

рдЗрд╕реЗ рдРрд╕реЗ рд╣реА рдЦреБрд▓рд╛ рдЫреЛрдбрд╝ рджреЗрдВ рдХреНрдпреЛрдВрдХрд┐ рд▓реЛрдЧ JSX рдХреЗ рд▓рд┐рдП рдирдП рдЯрд┐рдХрдЯ рдЦреЛрд▓рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдВрдЧреЗ (рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рднреА рджреЛ рдмрд╛рд░ рд╣реЛ рдЪреБрдХрд╛ рд╣реИ)ред

рдЗрд╕реЗ рдРрд╕реЗ рд╣реА рдЦреБрд▓рд╛ рдЫреЛрдбрд╝ рджреЗрдВ рдХреНрдпреЛрдВрдХрд┐ рд▓реЛрдЧ JSX рдХреЗ рд▓рд┐рдП рдирдП рдЯрд┐рдХрдЯ рдЦреЛрд▓рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдВрдЧреЗ (рдХреНрдпреЛрдВрдХрд┐ рдРрд╕рд╛ рдкрд╣рд▓реЗ рднреА рджреЛ рдмрд╛рд░ рд╣реЛ рдЪреБрдХрд╛ рд╣реИ)ред

рдпрд╣рд╛рдБ рдЕрдВрддрд░ рдпрд╣ рд╣реИ рдХрд┐ рдЕрдм рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЗ рд╕рд╛рде рдЙрддреНрддрд░ рджреЗрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗ:

"рд╣рдо рдЗрд╕реЗ рдЕрднреА рдХреЗ рд▓рд┐рдП рдбрд╛рд░реНрдЯ/рд╕реНрдкрдВрджрди рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рдмрдирд╛рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЖрдк рд╕рд╛рдореБрджрд╛рдпрд┐рдХ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ [рдпрд╣рд╛рдВ] рдФрд░ [рд╡рд╣рд╛рдВ] рдпрд╛ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ [рдпрд╣ рдореБрджреНрджрд╛]"

рдФрд░ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдмрдВрдж рдХрд░реЗрдВред

рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдФрд░ рд╡реЛрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЬрдЧрд╣ рдФрд░ рд╡рд╣ рдпрд╣рд╛рдБ рд╣реИред JSX рдЬреИрд╕реА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рджреВрд░ рдирд╣реАрдВ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЯрд┐рдХрдЯ рдЦреЛрд▓рд╛ рдЧрдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рдлрд╝реНрд▓рдЯрд░ рдЯреВрд▓ рд╕рдкреЛрд░реНрдЯ (рдХрдВрдкрд╛рдЗрд▓рд░ рдФрд░ рд╡реАрдПрд╕ рдХреЛрдб рдЖрдИрдбреАрдИ) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдореИрдВрдиреЗ рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА (рдкрд╣рд▓реА рдЯрд┐рдкреНрдкрдгреА) рдХреЗ рд╕рд╛рде рдЯрд┐рдХрдЯ рдЕрдиреБрд░реЛрдз рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рд╣реИред рдпрджрд┐ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд▓реЛрдЧ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреВрдЫрдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдлрд╝реНрд▓рдЯрд░ рдЯреАрдо рдХреЛ рдЗрд╕рдореЗрдВ рд╕рдВрд╕рд╛рдзрди рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрддреНрд╕рд╛рд╣рди рджреЗрдЧрд╛ред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд╕рдордп рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡рд┐рд╡рд╛рдж JSX рдХреЗ рдЖрд╕рдкрд╛рд╕ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ DSX рдХреЗ рдЖрд╕рдкрд╛рд╕ рд╣реИрдВред рдореИрдВ рдбреАрдПрд╕рдПрдХреНрд╕ рдЪрд░реНрдЪрд╛ рдХреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдзрд╛рдЧреЗ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреВрдВрдЧрд╛ рдФрд░ рдЗрд╕реЗ рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рдЫреЛрдбрд╝ рджреВрдВрдЧрд╛ред

рдЕрдВрдд рдореЗрдВ DSX JSX рдХреЗ рдХрд░реАрдм рдЖрдиреЗ рдХрд╛ рд╕рд┐рд░реНрдл рдПрдХ рддрд░реАрдХрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдЗрди рджреЛрдиреЛрдВ рдЪрд░реНрдЪрд╛рдУрдВ рдХреЛ рдПрдХ рдзрд╛рдЧреЗ рдореЗрдВ рдорд┐рд▓рд╛рдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рд┐рдПред

рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдмрдбрд╝реА рдмрд╛рдд рдирд╣реАрдВ рд╣реИ, рдореБрдЭреЗ рд╕рдЪ рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ 1 рднрд╛рд╖рд╛ рдХреЗрд╡рд▓ рдПрдХ рдмрдбрд╝рд╛ рд▓рд╛рдн рд╣реИ, рдЬреЗрдПрд╕рдПрдХреНрд╕ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЕрдзрд┐рдХ рдЪреАрдЬреЛрдВ рдХреЗ рд╕рд╛рде рдЖрдПрдЧрд╛ рдЬреИрд╕реЗ рдЬреЗрдПрд╕ рд╕реЗ рдПрдХреНрд╕рдПрдордПрд▓ рдХреЛ рдЕрд▓рдЧ рдХрд░рдирд╛, рдЖрджрд┐ ... рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИред

рдРрд╕реА рдореЗрд░реА рд░рд╛рдп рд╣реИред

рдпрд╣ рдЕрдм рддрдХ рдХрд╛ рд╕рдмрд╕реЗ рд▓рдВрдмрд╛ рдФрд░ рд╡реНрдпрд░реНрде рдЬреАрдердм рдореБрджреНрджрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рджреЗрдЦрд╛ рд╣реИред

@cbazza рдЕрдЪреНрдЫрд╛ рдХрд╛рдо
рдбреАрдПрд╕рдПрдХреНрд╕ + 1

@ рдмреИрд░реАрдпрд╛рди , рдзрдиреНрдпрд╡рд╛рдж

рдХреГрдкрдпрд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рдмрдЪреЗрдВ, рдЪрд╛рд╣реЗ рд╡рд╣ "+1" рд╣реЛ рдпрд╛ "рдзрдиреНрдпрд╡рд╛рдж"ред
рдпрд╣ рд╕рднреА рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдХреБрдЫ рднреА рджрд┐рд▓рдЪрд╕реНрдк рдирд╣реАрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдИрдореЗрд▓ рднреЗрдЬрддрд╛ рд╣реИред

рдХреГрдкрдпрд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рдмрдЪреЗрдВ, рдЪрд╛рд╣реЗ рд╡рд╣ "+1" рд╣реЛ рдпрд╛ "рдзрдиреНрдпрд╡рд╛рдж"ред
рдпрд╣ рд╕рднреА рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдХреБрдЫ рднреА рджрд┐рд▓рдЪрд╕реНрдк рдирд╣реАрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдИрдореЗрд▓ рднреЗрдЬрддрд╛ рд╣реИред

рдЖрдкрдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рджрд┐рд▓рдЪрд╕реНрдк рдирд╣реАрдВ рд╣реИ !!!
рдХреГрдкрдпрд╛ рд▓реЛрдЧреЛрдВ рдХреЛ рдпрд╣ рдмрддрд╛рдиреЗ рд╕реЗ рдмрдЪреЗрдВ рдХрд┐ рд╡реЗ рдХреНрдпрд╛ рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдХреНрдпрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреЗрд╡рд▓ рдЙрд╕ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░реЗрдВ рдЬреЛ рдЖрдк рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

@cbazza

рдпрд╛рд░, рдпрд╣ рдмреБрдирд┐рдпрд╛рджреА рд╢рд┐рд╖реНрдЯрд╛рдЪрд╛рд░ рд╣реИред рдЗрд╕ рдереНрд░реЗрдб рдкрд░ рдХреЛрдИ рднреА рдирдпрд╛ рд╕рдВрджреЗрд╢ рд╕рднреА рдиреЗ рдЗрд╕рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдРрд╕реА рдЯрд┐рдкреНрдкрдгреА рдкреЛрд╕реНрдЯ рдХрд░рдирд╛ рдЕрд╢рд┐рд╖реНрдЯрддрд╛ рд╣реИ рдЬреЛ рдЪрд░реНрдЪрд╛ рдореЗрдВ рдпреЛрдЧрджрд╛рди рдирд╣реАрдВ рдХрд░рддреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдХрд╛рд░рдг рдХреЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдкрд░реЗрд╢рд╛рди рдХрд░рддреА рд╣реИред "+1" рдФрд░ "рдзрдиреНрдпрд╡рд╛рдж" рдЬреИрд╕реА рдмреБрдирд┐рдпрд╛рджреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдердореНрд╕ рдЕрдк рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╕рд╛рде рд╡реНрдпрдХреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдмрд╕ рдРрд╕рд╛ рдХрд░реЗрдВред

рдРрд╕рд╛ рдХрд╣рд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдЕрдЧрд░ рдпрд╣ рдзрд╛рдЧрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рдмрд╛рдд рдкрд░ рдмрд╣рд╕ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рд╣реБрдЖ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдХреЛ "+1" рд╕рдВрджреЗрд╢ рдкреЛрд╕реНрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рдирд╣реАрдВ, рдпрд╣ рдПрдХ рдмрдбрд╝рд╛ рд▓рд╛рд▓ рдЭрдВрдбрд╛ рд╣реИ рдХрд┐ рд╕рднреА рд░рдЪрдирд╛рддреНрдордХ рдЪрд░реНрдЪрд╛ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддреМрд░ рдкрд░ рдорд░ рдЧрдИ рд╣реИ, рдФрд░ рдЗрд╕реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрдВрдж рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рд╢рд╛рдпрдж рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рдЗрд╕ рд╕рдордп)ред

@andrewackerman ,

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

рдХреГрдкрдпрд╛ рдмреЗрд╣реВрджрд╛ рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдЕрдкрдиреЗ рд╕реНрдкреНрд░реЗ-рдПрдВрдб-рдкреНрд░рд╛рд░реНрдердирд╛ рдмреИрд░рд╛рдЬ рдХреЗ рд╕рд╛рде FUD (рдЕрдирд┐рд╢реНрдЪрд┐рддрддрд╛ рдФрд░ рд╕рдВрджреЗрд╣ рдХрд╛ рдбрд░) рдлреИрд▓рд╛рдирд╛ рдмрдВрдж рдХрд░реЗрдВ (рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ, рджреАрд╡рд╛рд░ рдкрд░ рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрдХрд╡рд╛рд╕ рдлреЗрдВрдХреЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдХреБрдЫ рдЪрд┐рдкрдХ рдЬрд╛рддрд╛ рд╣реИ) рдФрд░ рдорд╛рдВрдЧреЗрдВред

рдЖрдкрдХреЗ рд╕рднреА рд▓реЗрдЦрди рдХреЗ рдмрд╛рдж рдЖрдкрдиреЗ DSX рдореЗрдВ рдХреЛрдИ рдореВрд▓реНрдп рдирд╣реАрдВ рдЬреЛрдбрд╝рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдЖрдкрдХреЗ рд╕рд╛рде рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рджрд┐рд▓рдЪрд╕реНрдкреА рдирд╣реАрдВ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрдкрдХрд╛ рдордХрд╕рдж рд╕реНрдкрд╖реНрдЯ рд╣реИ, DSX рдХреЛ рдирд╖реНрдЯ рдХрд░рддреЗ рд╣реБрдП FLUI рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдВред

рдореБрдЭреЗ рдХреБрдЫ рдмрддрд╛рдПрдВ, рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рдЙрддреНрддрд░ рд╣реИрдВ рдЬрдм рдЙрдиреНрд╣реЗрдВ FLUI рдкрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ? рдЖрдЗрдП рд╣рдо FLUI рдкрд░ рдереЛрдбрд╝реА рдЪрд░реНрдЪрд╛ рдХрд░реЗрдВ?

@cbazza

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

рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЖрдк рдореЗрд░реА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдореИрдВрдиреЗ рдмрд╣реБрдд рд╕рдордп рдФрд░ рдкреНрд░рдпрд╛рд╕ рдХреЛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕реЛрдЪрд╛ рдФрд░ рдирд┐рд╖реНрдкрдХреНрд╖ рд╣реЛрдиреЗ рдореЗрдВ рд▓рдЧрд╛рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЙрдиреНрд╣реЗрдВ "рд▓рдВрдмрд╛ рдФрд░ рдХрд╛рд▓реНрдкрдирд┐рдХ рд▓реЗрдЦрди" рдмрдирд╛ рд╕рдХрддрд╛ рд╣реВрдВ, рдпрд╣ рдЖрдкрдХреЗ рдЪрд░рд┐рддреНрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдХреБрдЫ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдФрд░ рдЖрдк рдХреИрд╕реЗ рдЖ рд░рд╣реЗ рд╣реИрдВ рдпрд╣ рдЪрд░реНрдЪрд╛ред рдореИрдВ рд╕реНрдкрдВрджрди рдореЗрдВ JSX рдХреЗ рдХрд┐рд╕реА рднреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХреЗ рдмрд╣реБрдд рд╣реА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдореБрджреНрджреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЬрдмрдХрд┐ рдЖрдк рдХрд┐рд╕реА рднреА рддрд░рд╣ рдХреА рд╡рд┐рдкрд░реАрдд рд░рд╛рдп рдХреЗ рд╕рд╛рде рдХрд┐рд╕реА рдХреЛ рднреА рд▓рддрд╛рдбрд╝рддреЗ рд╣реИрдВред рд╣рдо рдореЗрдВ рд╕реЗ рдХреМрди рдмреБрдирд┐рдпрд╛рджреА рд╢рд┐рд╖реНрдЯрд╛рдЪрд╛рд░ рдХрд╛ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдЕрдкрд░рд╛рдзреА рд╣реИ?

рдХреГрдкрдпрд╛ рдмреЗрд╣реВрджрд╛ рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдЕрдкрдиреЗ рд╕реНрдкреНрд░реЗ-рдПрдВрдб-рдкреНрд░рд╛рд░реНрдердирд╛ рдмреИрд░рд╛рдЬ рдХреЗ рд╕рд╛рде FUD (рдЕрдирд┐рд╢реНрдЪрд┐рддрддрд╛ рдФрд░ рд╕рдВрджреЗрд╣ рдХрд╛ рдбрд░) рдлреИрд▓рд╛рдирд╛ рдмрдВрдж рдХрд░реЗрдВ (рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ, рджреАрд╡рд╛рд░ рдкрд░ рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрдХрд╡рд╛рд╕ рдлреЗрдВрдХреЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдХреБрдЫ рдЪрд┐рдкрдХ рдЬрд╛рддрд╛ рд╣реИ) рдФрд░ рдорд╛рдВрдЧреЗрдВред

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

рдЖрдкрдХреЗ рд╕рднреА рд▓реЗрдЦрди рдХреЗ рдмрд╛рдж рдЖрдкрдиреЗ DSX рдореЗрдВ рдХреЛрдИ рдореВрд▓реНрдп рдирд╣реАрдВ рдЬреЛрдбрд╝рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдЖрдкрдХреЗ рд╕рд╛рде рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рджрд┐рд▓рдЪрд╕реНрдкреА рдирд╣реАрдВ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрдкрдХрд╛ рдордХрд╕рдж рд╕реНрдкрд╖реНрдЯ рд╣реИ, DSX рдХреЛ рдирд╖реНрдЯ рдХрд░рддреЗ рд╣реБрдП FLUI рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдВред

рдореИрдВ _you_ рд╕реЗ рдЖрдкрдХреА рд╕реНрдерд┐рддрд┐ рдХрд╛ рдмрдЪрд╛рд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣ рд░рд╣рд╛ рд╣реВрдВред рдЖрдкрдиреЗ рдмрд╛рд░-рдмрд╛рд░ рдХрд╣рд╛ рд╣реИ рдХрд┐ JSX/DSX рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛/рднрд╡рд┐рд╖реНрдп рд╣реИ, рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рдпрд╣ рдирд╣реАрдВ рдмрддрд╛рдпрд╛ рд╣реИ рдХрд┐ рдХреИрд╕реЗ рдпрд╛ рдХреНрдпреЛрдВред рдХрдИ рд▓реЛрдЧреЛрдВ рдиреЗ DSX рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡реИрдз рдЪрд┐рдВрддрд╛рдПрдБ рд╡реНрдпрдХреНрдд рдХреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрдиреНрд╣реЗрдВ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдЖрдк "рдпрджрд┐ рдЖрдкрдХреЛ рдпрд╣ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВ" рдкреНрд░рддрд┐рд╡рд╛рдж рдХреЗ рдкреАрдЫреЗ рдЫрд┐рдкрдХрд░ рдЗрд╕реЗ рджреВрд░ рдХрд░ рджреЗрдВред рдореЗрд░рд╛ "рдЙрджреНрджреЗрд╢реНрдп" рдЖрдкрдХреЛ рдЙрди рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдЬрд╡рд╛рдм рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ рдЬреЛ _any_ рддрдХрдиреАрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрдЫреЗ рдЬрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдпрд╣ рд╣реИ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдХрднреА рднреА рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред (рдФрд░ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╕рдордЭрд╛рдпрд╛ рд╣реИ, рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИред)

рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛFLUI рдХрд╛ рд╕рдВрдмрдВрдз рд╣реИ, рдореИрдВ рдХреЗрд╡рд▓ рд╕рдордЧреНрд░ рд╕рдорд╕реНрдпрд╛ (рдлреНрд▓рдЯрд░ рдХреЗ рд▓рд┐рдП UI рдШреЛрд╖рдгрд╛рддреНрдордХ рд╕рд┐рдВрдЯреИрдХреНрд╕) рдХрд╛ рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╕рдорд╛рдзрд╛рди рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЬрдмрдХрд┐ рдпрд╣ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реБрдП рдХрд┐ рд▓реЛрдЧ рд╡рд╣реА рдХрд░реЗрдВ рдЬреЛ рдореИрдВ DSX рдХреЗ рд╕рд╛рде рдХрд░ рд░рд╣рд╛ рд╣реВрдВ - рдЧрдВрднреАрд░ рдФрд░ рд░рдЪрдирд╛рддреНрдордХ рдЖрд▓реЛрдЪрдирд╛ рдХреА рдкреЗрд╢рдХрд╢ рдХрд░реЗрдВред рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдПрдлрдПрд▓рдпреВрдЖрдИ рдбреАрдПрд╕рдПрдХреНрд╕ рд╕реЗ рдирд┐рд╖реНрдкрдХреНрд╖ рд░реВрдк рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИ - рдореИрдВ рдпреВрдЖрдИ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдЧрдард┐рдд рдПрдХ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рд▓реЛрдЧреЛрдВ рд╕реЗ рдЕрдкрдиреА рд░рд╛рдп рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣ рд░рд╣рд╛ рд╣реВрдВред

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

рдореБрдЭреЗ рдХреБрдЫ рдмрддрд╛рдПрдВ, рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рдЙрддреНрддрд░ рд╣реИрдВ рдЬрдм рдЙрдиреНрд╣реЗрдВ FLUI рдкрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ? рдЖрдЗрдП рд╣рдо FLUI рдкрд░ рдереЛрдбрд╝реА рдЪрд░реНрдЪрд╛ рдХрд░реЗрдВ?

FLUI DSX рдирд╣реАрдВ рд╣реИ - рдЗрд╕реЗ _every_ рдкреНрд░рд╢реНрди рдХрд╛ рдЙрддреНрддрд░ рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдЬреЛ рдореИрдВрдиреЗ DSX рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдЖрдкрдХреЗ рд╕рд╛рдордиреЗ рд░рдЦрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЙрдирдореЗрдВ рд╕реЗ рдХрдИ DSX рдХреЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИрдВред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рдкрд╛рд╕ рдРрд╕реЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдЕрдкрдирд╛ рд╕реЗрдЯ рдирд╣реАрдВ рд╣реИ рдЬрд┐рдирдХрд╛ рдЙрддреНрддрд░ рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдФрд░ рдирд╣реАрдВ, рдореЗрд░реЗ рдкрд╛рд╕ рд╡реЗ рд╕рднреА рдЙрддреНрддрд░ рдирд╣реАрдВ рд╣реИрдВред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ _why_ рдореИрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЪрд░реНрдЪрд╛ рдХреЛ рдорд╣рддреНрд╡ рджреЗрддрд╛ рд╣реВрдВ - FLUI/DSX рдЬрдирддрд╛ рдХреА рд░рд╛рдп рдореЗрдВ рддрдм рддрдХ рдЦрдбрд╝реЗ рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ рдЬрдм рддрдХ рдХрд┐ рд╡реЗ рдПрдХ-рджреЛ рдмрд╛рд░ рдЕрдВрдЧрд╛рд░реЛрдВ рд╕реЗ рдЯрдХрд░рд╛рдиреЗ рд╕реЗ рдмрдЪ рдирд╣реАрдВ рд╕рдХрддреЗред рд╣рд╛рд▓рд╛рдВрдХрд┐ FLUI рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЙрдкрдпреБрдХреНрдд рдЬрдЧрд╣ рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рдЖрдк FLUI рдкрд░ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдЪрд░реНрдЪрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдЕрдкрдирд╛ рдПрдХ рдЗрд╢реНрдпреВ рдмреЛрд░реНрдб рд╣реИ , рдЗрд╕рд▓рд┐рдП рдмреЗрдЭрд┐рдЭрдХ рд╡рд╣рд╛рдВ рдкреЛрд╕реНрдЯ рдХрд░реЗрдВред

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

andrewackerman рдЕрдЪреНрдЫрд╛ рдХрд╛рдо
+ 1

@andrewackerman

рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛

рдпрд╛рд░, рдЖрдкрдХреЛ @jstansbe рд╕реЗ рдПрдХ рддрд╛рд░реАрдл рдорд┐рд▓рддреА рд╣реИ рдЬреЛ рдПрдХ рдердВрдм рдЕрдк рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рджреЗрддреА рд╣реИ рдФрд░ рдЖрдк рддрд╛рд░реАрдл рдкрд░ рдердВрдм рдбрд╛рдЙрди рдХрд░рддреЗ рд╣реИрдВ?

рдЬрд╛рд╣рд┐рд░ рд╣реИ рдЖрдкрдиреЗ рдореЗрд░реЗ рд╕рдВрдХреЗрдд рдХреЛ рджрд┐рд▓ рд╕реЗ рдирд╣реАрдВ рд▓рд┐рдпрд╛, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдЪрд░рд┐рддреНрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдирд╣реАрдВ рдкрд╣реБрдВрдЪреЗ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдореБрдЭреЗ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рдЬрд╛рдирддреЗред

рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЖрдк рдореЗрд░реА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдореИрдВрдиреЗ рдмрд╣реБрдд рд╕рдордп рдФрд░ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЙрдиреНрд╣реЗрдВ рд╕реЛрдЪ-рд╕рдордЭрдХрд░ рдФрд░ рдирд┐рд╖реНрдкрдХреНрд╖ рдмрдирд╛ рд╕рдХреВрдВ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЙрдиреНрд╣реЗрдВ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реВрдВ

рдореИрдВ рдЖрдкрдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдЖрдкрдХреЗ рд╕рднреА 'рд▓рдВрдмреЗ рд▓реЗрдЦрди' рдХреЛ рдкрдврд╝рддрд╛ рд╣реВрдВ, рд╣рд░ рдЪреАрдЬ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрддрд╛ рд╣реВрдВ: рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ рдареАрдХ рд╕реЗ рдЬрд╡рд╛рдм рджреЗрддрд╛ рд╣реВрдВ рддреЛ рдЖрдк рдореЗрд░реЗ рдЬрд╡рд╛рдм рдХреЛ рдирд╣реАрдВ рд╕рдордЭрддреЗ рд╣реИрдВ рдФрд░ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓рддреЗ рд╣реИрдВ рдХрд┐ рдореИрдВ рдЦрд╛рд░рд┐рдЬ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдЖрдк JSX рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдЕрдиреБрднрд╡реА рдирд╣реАрдВ рд╣реИрдВ, рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдирд╣реАрдВ рд╕рдордЭрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рджреЛрдЧреБрдирд╛ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдмрд╕ рдЗрд╕реЗ рдЕрдкрдирд╛ рд▓реЗрдВ рдФрд░ рдореИрдВ рдЗрд╕реЗ рдФрд░ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрддрд╛рдКрдВрдЧрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП JSX рдФрд░ DSX рдХреЗрд╡рд▓ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд 2 рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рддрд╛ рд╣реИ (рдкрд╣рд▓реЗ рдХрдИ рдмрд╛рд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ):

(1)
<A property="a" />
    becomes
new A(property: a)

(2)
<A property="a">
  <B />
  <C />
</A>
    becomes
new A(property: a, children: <Widget>[new B(), new C()])

рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рдореЗрдЬрдмрд╛рди рднрд╛рд╖рд╛ рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдпрд╣ рдЙрд╕реА рдирд╛рдо рдХреЗ рдШрдЯрдХреЛрдВ рдХреЗ рдЖрдпрд╛рдд рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИ; рдЙрддреНрддрд░: рдореЗрдЬрдмрд╛рди рднрд╛рд╖рд╛ред рдореИрдВ рдЦрд╛рд░рд┐рдЬ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдпрд╣ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдбрд┐рдЬрд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреА рддрд╛рдХрдд рдХрд╛ рд╕реНрд░реЛрдд рд╣реИред рдЖрдк рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдпрджрд┐ рдЖрдк рдорд╛рд░реНрдХрдЕрдк рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЕрд▓рдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдорд╛рд░реНрдХрдЕрдк рдХреЗ рдЕрдВрджрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЛ 'if' рдЖрджрд┐ рдХреЗ рд▓рд┐рдП рд╕рд░рд▓ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рд╛рде рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдЖрдк рдорд╛рд░реНрдХрдЕрдк рдХреЗ рдЕрдВрджрд░ рдПрдХ рдШреЛрд╖рдгрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдХрднреА рднреА рдЙрддрдирд╛ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рдореБрдЦреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ред рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдореЗрдВ рдорд╛рд░реНрдХрдЕрдк рд▓рд╛рдХрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рджреЛрдиреЛрдВ рджреБрдирд┐рдпрд╛ рдХреЗ рд╕рд░реНрд╡рд╢реНрд░реЗрд╖реНрда рд╣реИрдВ рдФрд░ рдпрд╣ рдЬреЗрдПрд╕рдПрдХреНрд╕/рдбреАрдПрд╕рдПрдХреНрд╕ рдХреА рд╢рдХреНрддрд┐ рд╣реИред

рдКрдкрд░ (2) рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЯреНрд░рд╛рдВрд╕рдлрд╝реЙрд░реНрдо рдХреЛ рд╣рд╛рд░реНрдбрдХреЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ <Widget> рдФрд░ рдпрд╣ рд╣рдореЗрд╢рд╛ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдм рдЖрдк рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдкрд╣рд▓реЗ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИред рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рджреЗрдЦреЗрдВ рдФрд░ рдЕрдм рд╕рднреА рдкреНрд░рддреАрдХ рд╕реНрд░реЛрдд рд╕реЗ рдЖрддреЗ рд╣реИрдВ рдпрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдХреБрдЫ рдкреНрд░рдореБрдЦ рдЬрд╛рджреВ рдХреЗ рдЧрдардЬреЛрдбрд╝ рдирд╣реАрдВ рд╣реЛрдВрдЧреЗред

рдЬрдмрдХрд┐ рдЖрдк рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХреА рд╡рд┐рдкрд░реАрдд рд░рд╛рдп рд╕реЗ рдХрд┐рд╕реА рдХреЛ рд▓рддрд╛рдбрд╝рддреЗ рд╣реИрдВред

рдпрд╣ рд╕рдЪ рдирд╣реАрдВ рд╣реИ, рдЖрдкрдХреА рд░рд╛рдп рд╡рд┐рдкрд░реАрдд рд╣реЛ рд╕рдХрддреА рд╣реИ рд▓реЗрдХрд┐рди рдЖрдк рдХреБрдЫ рд╕рдЪ рд╣реЛрдиреЗ рдХрд╛ рджрд╛рд╡рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдЬрдм рдореИрдВ рдЕрдиреНрдпрдерд╛ рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рдХрд┐рд╕реА рдРрд╕реЗ рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдЬреЛ рд╕реНрдкрдВрджрди рдХреЗ рдлреАрдЪрд░ рд╕реЗрдЯ рдореЗрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрджрд▓рд╛рд╡/рдЬреЛрдбрд╝ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЕрдиреБрдЪрд┐рдд рдЕрдкреЗрдХреНрд╖рд╛ рдирд╣реАрдВ рд╣реИред

рд▓реЗрдХрд┐рди рдпрд╣ рдмрд╛рдд рд╣реИ, рдореИрдВ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рдлрд╝реНрд▓рдЯрд░ рдЯреАрдо DSX рдХреЛ рд▓рд╛рдЧреВ рдХрд░реЗ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рдореИрдВрдиреЗ рдРрд╕рд╛ рдХрд┐рдпрд╛, рдЬрд┐рд╕реЗ рдЙрдиреНрд╣реЗрдВ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рд╡рд╣ рд╕рд╛рдорд╛рдиреНрдп рд╕рд╛рдорд╛рди рд╣реИ рдЬреЛ DSX рдкрд░ рдирд┐рд░реНрднрд░ рдирд╣реАрдВ рд╣реИ рдФрд░ DSX рдПрдХрдорд╛рддреНрд░ рд▓рд╛рднрд╛рд░реНрдереА рдирд╣реАрдВ рд╣реИред рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЬреЗрдПрд╕ рдЗрдВрдЬрди рд╕реНрд░реЛрдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдирдИ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рдПрдХ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЬреЗрдПрд╕ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ; рдЗрд╕рдиреЗ рдбрд╛рд░реНрдЯ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЛ рд╕рдХреНрд╖рдо рдмрдирд╛рдпрд╛ !!! рдФрд░ рдХрдИ рдЕрдиреНрдп (рдХреЙрдлрд╝реАрд╕реНрдХреНрд░рд┐рдкреНрдЯ, рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ, рдХрд╛рд░рдг, рдЖрджрд┐)ред рдбрд╛рд░реНрдЯ рдЕрдм рдРрд╕рд╛ рд╣реА рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЙрд╕ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рд╕реЗ рд▓рд╛рдн рдЙрдард╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рд╕рднреА рдирд╛рд╡реЛрдВ рдХреЛ рдКрдкрд░ рд▓рд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред

рдореИрдВ рдЖрдкрд╕реЗ рдЕрдкрдиреА рд╕реНрдерд┐рддрд┐ рдХрд╛ рдмрдЪрд╛рд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣ рд░рд╣рд╛ рд╣реВрдВред

рдореИрдВрдиреЗ рдЗрд╕реЗ рдкрд╣рд▓реЗ рд╣реА рдХрдИ рдмрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдирд┐рд╖реНрдХрд░реНрд╖ рдпрд╣ рд╣реИ рдХрд┐ рд╕рд╛рджрд╛ рдбрд╛рд░реНрдЯ рдпрд╛ рдбреАрдПрд╕рдПрдХреНрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡рд░реАрдпрддрд╛ рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рдЖрддрд╛ рд╣реИ; рдФрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдПрдХ рддрд░рд╣ рд╕реЗ рдордЬрдмреВрд░ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╣реИред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдпрд╣ рд╣реИ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдХрднреА рднреА рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХреНрдпреЛрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореИрдВ DSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реВрдВрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЗрд╕реЗ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ, рдЬреИрд╕реЗ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдпрд╛ рдЯреИрдм, рдЪрд░ рдирд╛рдо рд╕реЗ рдкрд╣рд▓реЗ рдпрд╛ рдмрд╛рдж рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд╛ рдЯрд╛рдЗрдк рдХрд░реЗрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП рд▓рдбрд╝рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ, рдмрд╕ рдпрд╣ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреА рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдПрдБ рд╣реИрдВ; рд╡рд╣рд╛рдБ 1 рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╕рдВрдкрд╛рджрдХ рд╣реИрдВ, рд╣реИ рдирд╛?

рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИ

рдмрд╕ рдЖрдкрдХреА рд░рд╛рдп, рд╣рдо рд▓рдЧрднрдЧ рд╣рд░ рднрд╛рд╖рд╛ рдореЗрдВ "if" рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдХрд░рддреЗ рд╣реИрдВ, 'for' рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ, 'рдХреНрд▓рд╛рд╕', рдФрд░ рдЕрдм 'asyn/await'ред

рд╣рд╛рд▓рд╛рдВрдХрд┐ FLUI рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЙрдкрдпреБрдХреНрдд рдЬрдЧрд╣ рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рдЖрдк FLUI рдкрд░ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдЪрд░реНрдЪрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдЕрдкрдирд╛ рдПрдХ рдЗрд╢реНрдпреВ рдмреЛрд░реНрдб рд╣реИ, рдЗрд╕рд▓рд┐рдП рдмреЗрдЭрд┐рдЭрдХ рд╡рд╣рд╛рдВ рдкреЛрд╕реНрдЯ рдХрд░реЗрдВред

рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛, рдЕрдм рддреБрдореНрд╣реЗрдВ рдореЗрд░рд╛ рд╕рдореНрдорд╛рди рдорд┐рд▓рд╛ред

рдЖрдк рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдореМрдХреЛрдВ (рддреАрди рдХреЗ рдХрд░реАрдм) рдХреЗ рд▓рд┐рдП рд╕реАрдзреЗ рддреМрд░ рдкрд░ рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИрдВ, рдЬрд╣рд╛рдВ рдЪреАрдЬреЛрдВ рдХреЗ рдмрд╣реБрдд рдЧрд░реНрдо рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рдЗрд╕ рдзрд╛рдЧреЗ рдХреЛ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рдмрдВрдж рдХрд░рдирд╛ рдкрдбрд╝рд╛ред

рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рднрд▓реЗ рд╣реА рдпрд╣ рдлрд┐рд░ рд╕реЗ рдмрдВрдж рд╣реЛ рдЬрд╛рдП, рд▓реЗрдХрд┐рди рдпрд╣ рд▓реЛрдЧреЛрдВ рдХреЛ JSX рдЬреИрд╕реА рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкреВрдЫрдиреЗ рд╕реЗ рдирд╣реАрдВ рд░реЛрдХреЗрдЧрд╛ред

рдЕрдкрдиреЗ рдЕрд╣рдВрдХрд╛рд░ рдХреЛ рд░реЛрдХреЗрдВ, рдЖрд▓реЛрдЪрдирд╛рдУрдВ рдХреЛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╣рдорд▓реЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рдирд╛ рдмрдВрдж рдХрд░реЗрдВ рдФрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдЬрд╡рд╛рдм рджреЗрдВред

рдореЗрд░рд╛ рдХреЛрдИ рдЕрд╣рдВрдХрд╛рд░ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░рд╛ рдЧреБрд╕реНрд╕рд╛ рдЧреБрд╕реНрд╕рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЛрдИ рдЧрд▓рддреА рдирд╣реАрдВ рд╣реИ рдЬрдм рдХреЛрдИ рдореБрдЭреЗ рдЪрд┐рдврд╝рд╛рддрд╛ рд╣реИ (рд╡рд╣ рддреБрд░рдВрдд рдмрд╛рд╣рд░ рдЖ рдЬрд╛рддрд╛ рд╣реИ)ред рдЖрдкрдХреЛ рдареЗрд╕ рдкрд╣реБрдВрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд▓реЗрдХрд┐рди рдЖрдкрдХреЗ рд╕рд╡рд╛рд▓ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рдереЗред

рдпрд╛ рддреЛ рд╡рд╣, рдпрд╛ рдбреАрдПрд╕рдПрдХреНрд╕ рдХреЗ рд╕рд╛рде рд╢рд╛рдВрддрд┐ рдмрдирд╛рдПрдВ рдЬреЛ рдХрднреА рдЬрдореАрди рдкрд░ рди рдЙрддрд░реЗред

рдЖрдк рд╕рдлрд▓рддрд╛ рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдореАрдЯрд░ рдирд╣реАрдВ рд╣реИрдВ рдФрд░ рдЖрдк рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ рдореИрдВ рдХреНрдпрд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдпрд╛рд░, рдЖрдкрдХреЛ @jstansbe рд╕реЗ рдПрдХ рддрд╛рд░реАрдл рдорд┐рд▓рддреА рд╣реИ рдЬреЛ рдПрдХ рдердВрдм рдЕрдк рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рджреЗрддреА рд╣реИ рдФрд░ рдЖрдк рддрд╛рд░реАрдл рдкрд░ рдердВрдм рдбрд╛рдЙрди рдХрд░рддреЗ рд╣реИрдВ?

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

рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдЖрдк JSX рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдЕрдиреБрднрд╡реА рдирд╣реАрдВ рд╣реИрдВ ...

рдХреНрдпрд╛ рдЗрд╕ рд╕реВрддреНрд░ рдкрд░ рдореЗрд░реА рдкрд╣рд▓реА рд╣реА рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдореЗрд░реЗ рдЕрд╕реНрд╡реАрдХрд░рдг рдиреЗ рд╢рд╛рдпрдж рдЖрдкрдХреЛ рдЗрддреНрддрд▓рд╛ рджреЗ рджреА?

... рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдирд╣реАрдВ рд╕рдордЭрддреЗ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

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

рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рдореЗрдЬрдмрд╛рди рднрд╛рд╖рд╛ рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдпрд╣ рдЙрд╕реА рдирд╛рдо рдХреЗ рдШрдЯрдХреЛрдВ рдХреЗ рдЖрдпрд╛рдд рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИ; рдЙрддреНрддрд░: рдореЗрдЬрдмрд╛рди рднрд╛рд╖рд╛ред

рдФрд░ рдпрд╣ рдЙрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдорд╛рд░реНрдХрдЕрдк рднрд╛рд╖рд╛ рдФрд░ рдореЗрдЬрдмрд╛рди рднрд╛рд╖рд╛ рдЕрд▓рдЧ рд╣реИрдВред JSX рдХреЗ рд╕рд╛рде, рдорд╛рд░реНрдХрдЕрдк рднрд╛рд╖рд╛ рдХреЛ рд╣реЛрд╕реНрдЯ рднрд╛рд╖рд╛ рдХреЗ _extension_ рдХреЗ рд░реВрдк рдореЗрдВ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЬреИрд╕реЗ, JSX рдХреЛ JS рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдЗрд╕реАрд▓рд┐рдП рдпрд╣ рдЙрддрдирд╛ рд╣реА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬрд┐рддрдирд╛ рдпрд╣ рдХрд░рддрд╛ рд╣реИред DSX рдбрд╛рд░реНрдЯ рдХреЗ рд▓рд┐рдП JSX рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИред

рдЖрдкрдХреЛ рд╡рд╣рд╛рдВ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣реА рд╣реИ? рдПрдХ рдорд╛рд░реНрдХрдЕрдк рднрд╛рд╖рд╛ рдЬрд┐рд╕реЗ рдПрдХ рднрд╛рд╖рд╛ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдПрдХ рдореВрд▓рднреВрдд рд░реВрдк рд╕реЗ рднрд┐рдиреНрди рднрд╛рд╖рд╛ рдореЗрдВ рдЬреЗрд░реА-рд░рд┐рдЧреНрдб рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдореБрджреНрджреЛрдВ, рдХрд┐рдирд╛рд░реЗ рдХреЗ рдорд╛рдорд▓реЛрдВ рдФрд░ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХрд╛ рднрд╛рд░ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ _рдЕрдкрд░рд┐рд╣рд╛рд░реНрдп_ рд╣реИред

рдЖрдк рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдпрджрд┐ рдЖрдк рдорд╛рд░реНрдХрдЕрдк рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЕрд▓рдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдорд╛рд░реНрдХрдЕрдк рдХреЗ рдЕрдВрджрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЛ 'if' рдЖрджрд┐ рдХреЗ рд▓рд┐рдП рд╕рд░рд▓ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рд╛рде рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдЖрдк рдорд╛рд░реНрдХрдЕрдк рдХреЗ рдЕрдВрджрд░ рдПрдХ рдШреЛрд╖рдгрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдХрднреА рднреА рдЙрддрдирд╛ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рдореБрдЦреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдорд╛рд░реНрдХрдЕрдк рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рдкреАрдЫреЗ рдХрд╛ рдкреВрд░рд╛ рд╡рд┐рдЪрд╛рд░ рдпрд╣ рд╣реИ рдХрд┐, рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рджреЛрдиреЛрдВ рдХреЗ рдмреАрдЪ рдПрдХ рд╕реНрдкрд╖реНрдЯ рдЕрд▓рдЧрд╛рд╡ рд╣реИ рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк _no_ рджреЛрд╣рд░рд╛рд╡ рд╣реЛрддрд╛ рд╣реИред

рджреВрд╕рд░реЗ, рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ UI рдХреЛрдб рдореЗрдВ if s рдФрд░ for s рд╕реЗ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдХреБрдЫ рднреА рдХрд░ рд░рд╣реЗ рд╣реИрдВ (рдЬреЛ рдРрд╕реЗ рдирд┐рд░реНрдорд╛рдг рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрд╕рд╛рдиреА рд╕реЗ рдХрдИ рдорд╛рд░реНрдХрдЕрдк рд╕рдорд╛рдзрд╛рдиреЛрдВ рдореЗрдВ рд╕рдВрднрд╛рд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ), рддреЛ рдореИрдВ рддрд░реНрдХ рджреВрдВрдЧрд╛ рдХрд┐ рдпрд╣ рдПрдХ рд╕рдВрдХреЗрдд рд╣реИ рдХрд┐ рд╡реИрд╕реЗ рднреА рдЖрдкрдХреЗ рдбрд┐рдЬрд╛рдЗрди рдореЗрдВ рдХреБрдЫ рдЧрдбрд╝рдмрдбрд╝ рд╣реИред рдПрдорд╡реАрд╕реА/рдПрдорд╡реАрд╡реАрдПрдо рдбрд┐рдЬрд╛рдЗрди рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рдпреВрдЖрдИ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдЬрдЯрд┐рд▓ рддрд░реНрдХ рд╢рд╛рдорд┐рд▓ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдмрджрдмреВрджрд╛рд░ рдХреЛрдб рдХрд╛ рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдВрдХреЗрдд рд╣реИ рдФрд░ рдЖрдкрдХреЛ рд╡реИрд╕реЗ рднреА рдПрдХ рдирдпрд╛ рд╕реНрд╡рд░реВрдк рдкрд░ рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

(рдпрд╣ рдХрд╣рдирд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдк рдЬреЗрдПрд╕рдПрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдорд╡реАрд╡реАрдПрдо рдлреИрд╢рди рдореЗрдВ рдШреЛрд╖рдгрд╛рддреНрдордХ рдпреВрдЖрдИ рдирд╣реАрдВ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдХреЗрд╡рд▓ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬреЛ рдереЛрдбрд╝рд╛ рдЙрджреНрджреЗрд╢реНрдп рд▓рд╛рдн рдХреЗ рд▓рд┐рдП рдкрд░реЗрд╢рд╛рдиреА рдХреЛ рдЖрдордВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдРрд╕рд╛ рдХреБрдЫ рдХреНрдпреЛрдВ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдЬрд┐рд╕рдореЗрдВ рдЖрдк _can_ рдХреЛрдб рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдЬреЛ рдорд╛рдирдХреЛрдВ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИ рдЬрдм рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдРрд╕рд╛ рдХреБрдЫ рдЬрд┐рд╕рд╕реЗ рдХреЛрдб рд▓рд┐рдЦрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ _is't_?)

рдпрд╣ рд╕рдЪ рдирд╣реАрдВ рд╣реИ, рдЖрдкрдХреА рд░рд╛рдп рд╡рд┐рдкрд░реАрдд рд╣реЛ рд╕рдХрддреА рд╣реИ рд▓реЗрдХрд┐рди рдЖрдк рдХреБрдЫ рд╕рдЪ рд╣реЛрдиреЗ рдХрд╛ рджрд╛рд╡рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдЬрдм рдореИрдВ рдЕрдиреНрдпрдерд╛ рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рдЖрдкрдиреЗ рдХреБрдЫ рднреА "рд╕рд┐рджреНрдз" рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред рдЖрдкрдиреЗ рд╡реНрдпрдХреНрддрд┐рдкрд░рдХ рджрд╛рд╡реЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рджрд┐рдпрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЕрднреА рддрдХ рдХрд┐рд╕реА рднреА рдареЛрд╕ рддрд░реНрдХ рдХреЗ рд╕рд╛рде рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрдкрдХреЗ рдХреНрд░реЗрдбрд┐рдЯ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдирд╡реАрдирддрдо рдкреЛрд╕реНрдЯ рдПрдХ рдмрдбрд╝рд╛ рд╕реБрдзрд╛рд░ рд╣реИред)

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

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

рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЬреЗрдПрд╕ рдЗрдВрдЬрди рд╕реНрд░реЛрдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ рдирдИ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рдПрдХ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЬреЗрдПрд╕ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ; рдЗрд╕рдиреЗ рдбрд╛рд░реНрдЯ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЛ рд╕рдХреНрд╖рдо рдмрдирд╛рдпрд╛ !!!

рдпрд╣ рд╕реНрд╡рдпрдВ рдЬреЗрдПрд╕ рдХреА рдкреНрд░рдХреГрддрд┐ рдореЗрдВ рд╣реИ рдХрд┐ рдРрд╕рд╛ рдХрд╛рдо рдЖрд╕рд╛рдиреА рд╕реЗ рдХрд░рдиреЗ рдпреЛрдЧреНрдп (рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдмреЛрд▓рдиреЗ рд╡рд╛рд▓рд╛) рд╣реИ, рдЗрддрдирд╛ рдЕрдзрд┐рдХ рд╣реИ рдХрд┐ рдбрд╛рд░реНрдЯ рдПрдХрдорд╛рддреНрд░ рдРрд╕реА рднрд╛рд╖рд╛ рд╕реЗ рджреВрд░ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЬреЗрдПрд╕ рдХреЗ рд▓рд┐рдП рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдХрдИ рдмрд╛рд░ рдмрддрд╛рдпрд╛ рд╣реИ, рдбрд╛рд░реНрдЯ рдЬреЗрдПрд╕ рдирд╣реАрдВ рд╣реИред рдпрд╣ рд╕реНрдерд┐рд░ рдФрд░ рджреГрдврд╝рддрд╛ рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдмрд╣реБрдд рд╕реА рдЪреАрдЬреЗрдВ рдЬреЛ рдЬреЗрдПрд╕ рдореЗрдВ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛, рдбрд╛рд░реНрдЯ рдореЗрдВ рдмреЗрд╣рдж рдЬрдЯрд┐рд▓ рд╣реИрдВред

рдореИрдВ DSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реВрдВрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЗрд╕реЗ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ, рдЬреИрд╕реЗ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рдпрд╛ рдЯреИрдм, рдЪрд░ рдирд╛рдо рд╕реЗ рдкрд╣рд▓реЗ рдпрд╛ рдмрд╛рдж рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд╛ рдЯрд╛рдЗрдк рдХрд░реЗрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП рд▓рдбрд╝рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ, рдмрд╕ рдпрд╣ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреА рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдПрдБ рд╣реИрдВ; рд╡рд╣рд╛рдБ 1 рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╕рдВрдкрд╛рджрдХ рд╣реИрдВ, рд╣реИ рдирд╛?

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

рдЖрдк рдПрдХ рдРрд╕рд╛ рдЙрдкрдХрд░рдг рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдк рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдЖрд╢реНрд╡рд╕реНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рдХреБрдЫ рд▓реЛрдЧ рдЗрд╕реЗ рдкрд╕рдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ" рд╕реЗ рдкрд░реЗ рддрд░реНрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ рдирд╣реАрдВ рдбрд╛рд▓ рд╕рдХрддреЗ _рдХреНрдпреЛрдВ_ рдЙрдиреНрд╣реЗрдВ рдЗрд╕реЗ рдХрд┐рд╕реА рдФрд░ рдЪреАрдЬрд╝ рдкрд░ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рддреЛ рдЖрдкрдХреЛ рдХреНрдпрд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рд╡реЗ рдХрд░реЗрдВрдЧреЗ? рдФрд░ рдЖрдкрдХреЛ _ensure_ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рд╣реИ рдХрд┐ рд╡реЗ DSX рдХреЗ рдлреАрдЪрд░ рд╕реЗрдЯ рдХреЛ рдбрд┐рдЬрд╛рдЗрди рдХрд░рддреЗ рд╕рдордп рдХрд░реЗрдВрдЧреЗ?

рдмрд╕ рдЖрдкрдХреА рд░рд╛рдп, рд╣рдо рд▓рдЧрднрдЧ рд╣рд░ рднрд╛рд╖рд╛ рдореЗрдВ "if" рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдХрд░рддреЗ рд╣реИрдВ, 'for' рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ, 'рдХреНрд▓рд╛рд╕', рдФрд░ рдЕрдм 'async/await'ред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╡реЗ рдХреАрд╡рд░реНрдб ( async/await рдХреЛ рдЫреЛрдбрд╝рдХрд░) рдХрдИ рджрд╢рдХреЛрдВ рдХреЗ рджреМрд░рд╛рди C рдФрд░ BASIC рдЬреИрд╕реА рднрд╛рд╖рд╛рдУрдВ рдХреА рдЕрдкрд╛рд░ рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдХреЗ рдХрд╛рд░рдг рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╢рдмреНрджрд╛рд╡рд▓реА рдмрди рдЧрдПред рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ, JSX рдЕрдкрдиреА рд▓рдВрдмреА рдЙрдореНрд░ рдореЗрдВ рд╕рд┐рджреНрдз рд╣реЛрдиреЗ рд╕реЗ рдмрд╣реБрдд рджреВрд░ рд╣реИ - рдпрд╣ рд▓рдЧрднрдЧ 5 рд╡рд░реНрд╖реЛрдВ рд╕реЗ рд╣реИ рдФрд░ рд╡рд┐рдХрд▓реНрдк рдЙрдкрд▓рдмреНрдз рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж рд░рд┐рдПрдХреНрдЯ рдХреЗ рдмрд╛рд╣рд░ рдХреЛрдИ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЙрдкрдпреЛрдЧ рджреЗрдЦрдирд╛ рдмрд╛рдХреА рд╣реИред

рджреВрд╕рд░рд╛, рдкрд░рд┐рдЪрд┐рдд рдФрд░ рдкрд░рдВрдкрд░рд╛ рдХреЗ рдмреАрдЪ рдПрдХ рдмрдбрд╝рд╛ рдЕрдВрддрд░ рд╣реИред if , while , for , struct , class , enum , try/catch/finally , async/await ... рдХрд┐рд╕реА рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреЛ рдореМрдЦрд┐рдХ рд░реВрдк рд╕реЗ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рдпреЗ рд╕рднреА рдмреЗрд╣рддрд░реАрди рддрд░реАрдХреЗ рд╣реИрдВред рдЙрди рдЦреЛрдЬрд╢рдмреНрджреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдмрдЪрд╛рд╡ рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░рдг рд╣реИрдВ рдЬреЛ рдЙрдирд╕реЗ рдкрд░реЗ рд╣реИрдВ - рд╡реЗ рд╡реИрдЪрд╛рд░рд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддреЗ рд╣реИрдВред (рдмреЗрд╢рдХ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╡реЗ рд╕реНрдерд┐рд░рд╛рдВрдХ рд╣реИрдВред рдХреБрдЫ рднрд╛рд╖рд╛рдПрдВ if ... then рдХрд░рддреА рд╣реИрдВред рдХреБрдЫ if ... elif рдХрд░рддреЗ рд╣реИрдВ рдЬрдмрдХрд┐ рдЕрдиреНрдп if ... else if рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рднреА рдЕрдиреНрдп if...endif рдХрд░рддреЗ рд╣реИрдВред foreach рдХрд░рддреЗ рд╣реИрдВ, рдЕрдиреНрдп from рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рдЗрд╕реА рддрд░рд╣, рдФрд░ рдЖрдЧреЗред)

рдЗрд╕ рдмреАрдЪ, JSX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рддрд░реНрдХ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ "рдкрд░рд┐рдЪрд┐рдд" рд╣реИ, рдЙрд╕реА рд╢реНрд░реЗрдгреА рдореЗрдВ рдлрд┐рдЯ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред JSX рдШреЛрд╖рдгрд╛рддреНрдордХ UI рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рди рддреЛ рдПрдХрдорд╛рддреНрд░ рд╣реИ рдФрд░ рди рд╣реА рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕реЗ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдХрд┐рд╕реА рдЕрдиреНрдп рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдкрд░рд┐рдЪрд┐рддрддрд╛ рдПрдХ рдмреБрд░реА рдЪреАрдЬрд╝ рдореЗрдВ рдмрджрд▓ рд╕рдХрддреА рд╣реИ - рдкрд░рд┐рдЪрд┐рддрддрд╛ рдЙрдиреНрд╣реЗрдВ рдХрдореЛрдмреЗрд╢ рдЙрд╕реА рддрд░рд╣ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░рддреА рд╣реИ рдЬреИрд╕реЗ рдпрд╣ рдХрд╣реАрдВ рдФрд░ рдХрд╛рдо рдХрд░рддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдпрд╣ рддреЛ рдХреНрдпрд╛ рдпрд╣ рдПрдХ рдорд╛рдирд╕рд┐рдХ рдЕрд▓рдЧрд╛рд╡ рдХреА рдУрд░ рдирд╣реАрдВ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдХрд┐ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рдЖрдк рдмрдЪрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рднрд▓реЗ рд╣реА рдпрд╣ рдлрд┐рд░ рд╕реЗ рдмрдВрдж рд╣реЛ рдЬрд╛рдП, рд▓реЗрдХрд┐рди рдпрд╣ рд▓реЛрдЧреЛрдВ рдХреЛ JSX рдЬреИрд╕реА рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкреВрдЫрдиреЗ рд╕реЗ рдирд╣реАрдВ рд░реЛрдХреЗрдЧрд╛ред

рд╡реЗ рд╡реИрд╕реЗ рднреА рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреВрдЫрддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдпрд╣рд╛рдБ рдлрд┐рд░ рд╕реЗ рдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдореИрдВ рдирд╣реАрдВ рджреЗрдЦрддрд╛ рдХрд┐ рдзрд╛рдЧрд╛ рдХреИрд╕реЗ рдмрдВрдж рд╣реЛ рдЬрд╛рдПрдЧрд╛ред

рдЖрдк рд╕рдлрд▓рддрд╛ рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдореАрдЯрд░ рдирд╣реАрдВ рд╣реИрдВ рдФрд░ рдЖрдк рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ рдореИрдВ рдХреНрдпрд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдЙрддреНрдкрд╛рдж рдбрд┐рдЬрд╛рдЗрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рднреА рдХрд┐рддрд╛рдм рдкрдврд╝реЗрдВред рдЕрдзреНрдпрд╛рдп рдПрдХ рд╣рдореЗрд╢рд╛ рдПрдХ рдмрдпрд╛рди, рдПрдХ рдШреЛрд╖рдгрд╛рдкрддреНрд░, рдПрдХ рдирд╛рд░рд╛, рдХреБрдЫ рднреА рдореВрд░реНрдд рдФрд░ рд╕реНрдкрд╖реНрдЯ рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ рдЬреЛ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдЙрддреНрдкрд╛рдж рдХреНрдпрд╛ рд╣реИ рдФрд░ рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕рдХреА рдкрд░рд╡рд╛рд╣ рдХреНрдпреЛрдВ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдПред рдПрдХ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╢реМрдХрд┐рдпрд╛ рдЙрджреНрдпрдорд┐рдпреЛрдВ рдХреЛ рджреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╕рд▓рд╛рд╣ рдХрд╛ рд╕рдмрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рдПрдХ "рд▓рд┐рдлреНрдЯ рдкрд┐рдЪ" тАЛтАЛрдмрдирд╛рдирд╛ рд╣реИ, рдХреБрдЫ рдРрд╕рд╛ рдЬреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдФрд░ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд░реВрдк рд╕реЗ рдЙрддреНрдкрд╛рдж рдФрд░ рдбреНрд░реЙ рдХреЛ 30 рд╕реЗрдХрдВрдб рдпрд╛ рдЙрд╕рд╕реЗ рдХрдо рд╕рдордп рдореЗрдВ рд╕рдВрдкреНрд░реЗрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдирд╣реАрдВ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдЖрдкрдХреЗ рдЙрддреНрдкрд╛рдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рддреЛ рдпрд╣ рдПрдХ рд╕рдВрдХреЗрдд рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдкрд╣рдЪрд╛рди рд╕рдВрдХрдЯ рд╕реЗ рдкреАрдбрд╝рд┐рдд рд╣реИред рдпрджрд┐ рдЙрддреНрдкрд╛рдж рдХреЛ рдбрд┐рдЬрд╛рдЗрди рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╡реНрдпрдХреНрддрд┐ рдЖрд▓реЛрдЪрдирд╛ рдХрд╛ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рдЬрд╡рд╛рдм рдирд╣реАрдВ рджреЗ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЙрддреНрдкрд╛рдж рдореЗрдВ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдХреА рдХрдореА рдХрд╛ рдЖрднрд╛рд╕ рджреЗрддрд╛ рд╣реИред рд╡реЗ рджреЛрдиреЛрдВ рдЪреАрдЬреЗрдВ рдирд┐рд╡реЗрд╢рдХреЛрдВ рдХреЗ рд▓рд┐рдП рдмрдбрд╝реЗ рд▓рд╛рд▓ рдЭрдВрдбреЗ рд╣реИрдВред

рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЙрддреНрдкрд╛рдж DSX рд╣реИ, рдФрд░ рдирд┐рд╡реЗрд╢рдХ рдбреЗрд╡рд▓рдкрд░ рд╣реИрдВ рдЬреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдХреЗрд╡рд▓ рд╡рд╣реА рд▓реЛрдЧ рдЬреЛ рдЖрдкрдХрд╛ рд╕рдорд░реНрдерди рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╡реЗ рд▓реЛрдЧ рд╣реИрдВ рдЬреЛ рд╡рд┐рд╡рд░рдг рдореЗрдВ "JSX" рдХреЗ рд╕рд╛рде рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рдкрд░ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдмрд┐рдирд╛ рд╢рд░реНрдд рдЦреБрд╢реА рдордирд╛рдПрдВрдЧреЗред рдЗрд╕ рд╕реВрддреНрд░ рдореЗрдВ рд╣рд░ рджреВрд╕рд░рд╛ рд╡реНрдпрдХреНрддрд┐ рдореИрдВрдиреЗ рджреЗрдЦрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЬреЛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рд╡рд╣ рдкреНрд░рд╢реНрди рдЖрдкрдХреЗ рдЙрддреНрддрд░ рдХреЗ рдмрд╛рдж рдЕрд╕рдВрдмрджреНрдз рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред

рдЖрдк рд╡рд░реНрддрдорд╛рди рдореЗрдВ 0% рд░реВрдкрд╛рдВрддрд░рдг рджрд░ рдкрд░ рдпрд╛ рдЙрд╕рдХреЗ рдкрд╛рд╕ рдмреИрдареЗ рд╣реИрдВ, рдФрд░ _рд╡рд╣реА_ рдЬрд╣рд╛рдВ рд╕реЗ рдореИрдВ рдЖ рд░рд╣рд╛ рд╣реВрдВ рдЬрдм рдореИрдВ рдХрд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдкрдиреЗ рдЕрднреА рддрдХ рдЖрд▓реЛрдЪрдирд╛ рдХрд╛ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рдЬрд╡рд╛рдм рдирд╣реАрдВ рджрд┐рдпрд╛ рд╣реИред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдкрд░рд╡рд╛рд╣ рди рд╣реЛ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рдбреАрдПрд╕рдПрдХреНрд╕ рдХреЛ рдпреВрдЖрдИ рдШреЛрд╖рдгрд╛ рдорд╛рд░реНрдХрдЕрдк рдкреНрд▓рдЧрдЗрди рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдФрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреБрдирд┐рдпрд╛ рдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗред

рд▓реЗрдХрд┐рди рдлрд┐рд░, рд╢рд╛рдпрдж рдЖрдк рдПрдХ рдЕрдкрд╡рд╛рдж рд╣реИрдВред

рдареАрдХ рд╣реИ, рдпрд╣ рдмрд╛рддрдЪреАрдд рдЙрди рдЪрд░реНрдЪрд╛рдУрдВ рд╕реЗ рдмрд╣реБрдд рдЖрдЧреЗ рдирд┐рдХрд▓ рдЧрдИ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдо рдлрд╝реНрд▓рдЯрд░ рд╕рдореБрджрд╛рдп рдореЗрдВ рд╕реНрд╡реАрдХрд╛рд░реНрдп рдорд╛рдирддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕ рдереНрд░реЗрдб рдХреЛ рд▓реЙрдХ рдХрд░рдиреЗ рдФрд░ рдмрдЧ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдБред рд╣рдо рдпрд╣рд╛рдВ рдХреИрд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдХреГрдкрдпрд╛ https://flutter.io/design-principles/#conflict -resolution рдкрдврд╝рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред

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

рдореИрдВ рдпрд╣ рдкреВрдЫрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд▓реЛрдЧ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рддрдм рддрдХ рдирдИ рдмрдЧ рдирд╣реАрдВ рдЦреЛрд▓рддреЗ рдЬрдм рддрдХ рдХрд┐ рдХреБрдЫ рдмрд╣реБрдд рд╣реА рд░рдЪрдирд╛рддреНрдордХ рдФрд░ рдирдпрд╛ рди рд╣реЛ рдЬреЛ рд╕рд╛рдордиреЗ рдЖрдиреЗ рд▓рд╛рдпрдХ рд╣реЛред

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

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

cbracken picture cbracken  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

apwilson picture apwilson  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

cjztool picture cjztool  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

xster picture xster  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Hixie picture Hixie  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ