react-native - 能用react.js写点东西,却还是不太清楚react.js的作用。

查看:147
本文介绍了react-native - 能用react.js写点东西,却还是不太清楚react.js的作用。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

还有react native,用html,css,js能实现的为什么到了移动端就要用rn或者vue等

解决方案

我的理解很浅薄,尝试回答题主的问题。
在这些现代前端框架没出现之前(react、vue、angular),我们做一个点击后更新列表的功能需要这样。

$('#btn').click(function(e){
    $.ajax({
        url: 'some/url',
        data:{
            $(e.target).data(id)
        },

        success: function(data){
            $('#list').append('<li data-id=' + data.id + '>' + data.name +</li>');
        }
    })
})

我们的代码需要知道怎么去做,这会带来一些问题:

使dom中的状态和保存在数据库中的数据同步是困难的,你可能会使用观察者模式或者根据响应重新渲染数据。这本身就是很麻烦的事情,同时如果我们除了操作dom之外;需要对数据做其他的操作怎么办?如果点击按钮之后,ui的其他部分需要更新怎么办?这些问题会使我们使用多层回调,使代码深度耦合;每一次更改都是非常麻烦的,也是不方便做测试的。

以上的方式被称为命令式编程,我们的代码需要知道怎么去做。幸运的是,现代前端框架使用声明式编程;我们只需要关注做什么,它们有一个持久的模型层(数据层),dom会随数据自动的更新;你不用写任何代码更改dom,也不应该这样做。框架负责改变dom。

先写到这里,至于react和vue的流行很大一部分原因它们都有虚拟dom;使dom更新时有良好的性能。rn可以让你写一份代码,运行在android和ios两个平台。相对于web app和混合式开发,性能更好。

这篇关于react-native - 能用react.js写点东西,却还是不太清楚react.js的作用。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆