react helmet create app reactjs vue.js

reactjs - helmet - Flujo de datos unidireccionales en React



react helmet ssr (2)

React tiene la noción de unidirectional data flow en contraste con el two-day data binding desde otros marcos, por ejemplo, Vue.js

Hice los siguientes fragmentos para detectar la diferencia esencial, entonces parece que lo unidirectional obliga a la aplicación a propagar cualquier transición de estado, mientras que two-way hace por usted.

Afortunadamente, puedo confundir la esencia aquí, ¿podrías ayudar a aclarar algo más fundamentalmente divergente entre el dúo?

var MyComponent = React.createClass({ getInitialState: function () { return { one: ''Hello'', two: ''world'', three: '''' } }, handleValueOneChange: function (e) { this.setState({one: e.target.value}) }, handleValueTwoChange: function (e) { this.setState({two: e.target.value}) }, render: function () { return ( <div> <h1> {this.state.one + '' '' + this.state.two} </h1> <input value={this.state.one} onChange={this.handleValueOneChange} /> <input value={this.state.two} onChange={this.handleValueTwoChange} /> </div> ) } }) ReactDOM.render( <MyComponent />, document.getElementById(''app'') )

<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script> <div id="app"/>

new Vue({ el: ''#app'', data: { one: ''Hello'', two: ''world'' }, computed: { three: function() { return this.one + '' '' + this.two } } })

<script src="https://npmcdn.com/vue/dist/vue.js"></script> <div id="app"> <h1>{{ three }}</h1> <input v-model="one" /> <input v-model="two" /> </div>


Vue.js es principalmente unidireccional. v-model es el único caso que yo sepa que es two-way


Eso es correcto. No estoy familiarizado con vue.js, pero angular también hace algo similar con el enlace de datos bidireccional. Ahora, Reaccionar puede parecer demasiado tedioso cuando lo necesite debido a todo el código adicional que necesita para escribir (al menos se siente así).

Pero lo que he notado es que el enlace de datos bidireccional no es necesario para la mayoría de las páginas y la mayoría de los componentes html que se escriben. Son esenciales para los elementos basados ​​en la forma y eso es principalmente eso. Y la mayoría de las páginas no están basadas en formularios. Creo que el equipo angular se ha dado cuenta de este hecho y de lo mucho que afecta el rendimiento de la aplicación, y por lo tanto, introdujeron construcciones para el enlace de datos de una vía a partir de la versión 1.3.

Entonces, en general, depende de lo que estás tratando de hacer y eliges la mejor solución. Por ejemplo, podría estar escribiendo una aplicación totalmente basada en formularios (escribí una aplicación de abrazo de esa manera) y el enlace de datos bidireccional será de gran ayuda. Pero la mayoría de los demás, unidireccional es lo suficientemente bueno.

Aquí hay otras publicaciones de SO que pueden ser de su interés:

¿Alguien puede explicar la diferencia entre el enlace de datos unidireccional Reacciona y el enlace de datos bidireccional de Angular?

¿Qué es el enlace bidireccional?