React: рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЯреИрдЧ рдХреЗ рд╕рд╛рде рд╡рд┐рдлрд▓ рд╣реЛ рд░рд╣реА рд╣реИред

рдХреЛ рдирд┐рд░реНрдорд┐рдд 11 рдЕрдкреНрд░реИрд▓ 2015  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: facebook/react

рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдпрд╣ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ:

    render: function() {
        return (
            <div class="gl-map-container">

                <script id="shader-fs" type="x-shader/x-fragment">
                    precision mediump float;

                    void main(void) {
                        gl_FragColor = vec4(1.0, 1.0, 1.0, 1.0);
                    }
                </script>

                <script id="shader-vs" type="x-shader/x-vertex">
                    attribute vec3 aVertexPosition;

                    uniform mat4 uMVMatrix;
                    uniform mat4 uPMatrix;

                    void main(void) {
                        gl_Position = uPMatrix * uMVMatrix * vec4(aVertexPosition, 1.0);
                    }
                </script>

                <canvas width='500' height='500' className="gl-map-canvas">
                </canvas>
            </div>
        );
    }

рдЙрдкрд╛рдп рдХреНрдпрд╛ рд╣реИ?

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

рдЖрдк рд╢рд╛рдпрдж рдпрд╣реА рдЪрд╛рд╣рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА, рдЖрдкрдХреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╢рд╛рдпрдж рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рд╣реЛрдЧреА (рдЕрдзрд┐рдХрд╛рдВрд╢ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЖрдВрддрд░рд┐рдХ HTMLed рд╣реЛрдиреЗ рдкрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред

<script dangerouslySetInnerHTML={{__html: `
  alert();
`}} />

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

рдХреНрдпрд╛ рдЖрдк рдЕрдзрд┐рдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ? рдЖрдкрдиреЗ рдХреНрдпрд╛ рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХреА рдереА? рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдХреНрдпрд╛ рд╣реБрдЖ?

рдЖрдк рд╢рд╛рдпрдж рдпрд╣реА рдЪрд╛рд╣рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА, рдЖрдкрдХреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╢рд╛рдпрдж рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рд╣реЛрдЧреА (рдЕрдзрд┐рдХрд╛рдВрд╢ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЖрдВрддрд░рд┐рдХ HTMLed рд╣реЛрдиреЗ рдкрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред

<script dangerouslySetInnerHTML={{__html: `
  alert();
`}} />

рдореАрдард╛, рд╡рд╣ рдХрд╛рдо рдХрд░реЗрдЧрд╛! рдпрд╣ type="x-shader/x-vertex" рдЖрджрд┐ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЛ рдЗрд╕реЗ рд╡реИрд╕реЗ рднреА рдкрдврд╝рдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рд┐рдПред рд╢реЗрдбрд░реНрд╕ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВ рдЗрд╕реЗ рдмрд╛рдж рдореЗрдВ (рдШрдЯрдХрдбрд┐рдбрдорд╛рдЙрдВрдЯ) рдкрдХрдбрд╝ рд╕рдХрддрд╛ рд╣реВрдВред рд╡рд┐рдбрдВрдмрдирд╛ рдпрд╣ рд╣реИ рдХрд┐, рдореИрдВрдиреЗ JSX рдХреЗ рдмрд╛рд╣рд░ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдорд╛рдкреНрдд рдХрд┐рдпрд╛, рдЬреЛ рдХрд┐ рд╡рд┐рдо рдореЗрдВ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рд╣реЛрдиреЗ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдФрд░ рднреА рдмреЗрд╣рддрд░ред

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

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

vignestion picture vignestion  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

tleunen picture tleunen  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

kocokolo picture kocokolo  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

jvorcak picture jvorcak  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

DimitarChristoff picture DimitarChristoff  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ