react-native - 能用react.js写点东西,却还是不太清楚react.js的作用。
本文介绍了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屋!
查看全文