rn本地存储用什么组件?



  • rn 用什么来操作本地存储?是用Realm 还是react-native-sqlite-storage 纠结中 不知道有什么优劣



  • @搁浅 说:

    什么来操作本地存储?是用Realm 还是react-native-sqlite-storage 纠结中 不知道有什么优劣

    RN自带的AsyncStorage
    还有@sunnylqm 写的 https://github.com/sunnylqm/react-native-storage



  • 好的,谢啦 我采用react-native-storage



  • realm可以试试



  • @EvanJin 你用过吗? 不知道realm 有什么优势



  • Realm还可以。官方文档很详细。



  • 数据量如果不大,其实还是asyncstorage好用,而且调用方式是异步的,realm只能是同步的好像



  • @搁浅 realm 其实类似sqllite的本地数据库,至于性能,其实还可以,只不过realm类似是nosql类型的数据库,看你们实际的业务决定最好



  • 用过realm,如果你储存的是多个collection,建议用realm,不然asyncstorage没有query会死的。
    realm是一家商业的本地储存方案提供商,所以realm的performance其实很高,我记得insert的速度一般,只有sqlite的一半,但是query的速度无敌。来个benchmark:
    alt text

    另外小弟我写了一个react-native-backbone,方便你用backbone的model和collection的sync methods来进行储存和读取。(支持realm和fetch哦):https://github.com/peter4k/react-native-backbone



  • 最近我们的一个项目用到了realm,感觉也是好多坑。
    不过主要是我们realm-js、realm-java和realm-swift混合着用的,如果只用realm-js应该还好吧


登录后回复