首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么我的函数在react native中仍然返回一个promisse

在React Native中,函数返回一个Promise的原因可能是因为函数中包含了异步操作。React Native是一个基于JavaScript的框架,它允许开发者使用JavaScript编写移动应用程序。由于JavaScript是单线程的,为了避免阻塞UI线程,React Native鼓励使用异步操作来处理耗时的任务。

当函数中包含了异步操作时,函数会立即返回一个Promise对象,表示异步操作的结果。Promise是一种用于处理异步操作的对象,它可以用于处理成功、失败和等待状态的结果。通过返回一个Promise,函数可以在异步操作完成后,通过resolve或reject方法来改变Promise的状态,并将结果传递给调用者。

在React Native中,常见的异步操作包括网络请求、文件读写、数据库操作等。这些操作需要一定的时间来完成,因此函数会立即返回一个Promise,以便在操作完成后通知调用者。

为了处理返回的Promise,可以使用Promise的then方法来注册成功回调函数,或使用catch方法来注册失败回调函数。在成功回调函数中,可以处理异步操作的结果;在失败回调函数中,可以处理异步操作的错误。

在React Native中,可以使用一些相关的库或API来处理异步操作,例如axios库用于发送网络请求,react-native-fs库用于文件读写操作,react-native-sqlite-storage库用于数据库操作等。这些库提供了简化异步操作的方法和函数,可以更方便地处理异步操作。

总结起来,函数在React Native中返回一个Promise的原因是函数中包含了异步操作,通过返回Promise对象,可以在异步操作完成后通知调用者,并处理异步操作的结果。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

应用开发为什么选择 Flutter 而不是 React Native

作为一位开发人员,想在本文中与大家聊聊跨平台开发领域两大核心选项——Flutter 与 React Native 框架,并介绍自己为什么更偏爱 Flutter。...为什么更倾向于 Flutter 一段时间以来,React Native 一直是全球领先跨平台开发框架。而且 Flutter 出现之前,React Native 可谓无可匹敌。...开发高性能应用 应用性能方面,Flutter 同样明显领先于 React Native几乎所有性能测试,Flutter 性能都比 React Native 更好。...例如,使用 Flutter 时,应用动画运行速率可以达到每秒 60 帧。 对于混合应用开发,将代码、原生组件以及库集成至新架构时,React Native 会带来更高复杂性。...React Native 官方文档并不提供任何明确支持或定义步骤,导致开发者找不到得到广泛认可发布流程自动化指南。

3.2K20

React NativeAndroid当中实践(五)——常见问题

platform=android (1)说说遇到问题,开启包服务器之后,cmd显示如下: ? 出现React packager ready就走不动了。...确认之后返回然后摇动打开调试页面选择 ? 重新加载之后,就会出现我们期盼已久“Hello,World” ? React Native开发者模式 ? 会发现顶部有这样一条 ?...点按操作也被抽象成了一组组件(TouchableXXX),这种抽象方式是之前做类似工作没有想到。facebook还列出Native为什么和web「手感」不同原因:实时点按反馈和取消能力。...这样,用户必须在不同平台下写两套代码,而且所有能力仍然强烈依赖 React native 开发人员暴露接口。...另外,React Native仍然很不完善。文档还不全,基本上是看着他示例代码完成demo,集成到已有app文档也是今天才出来。

2.3K20

react-native使用cookie

前言 不久前,因为课程需要,使用react native搭建了人生第一个完整app--一个广外教务查询系统。...祥见我一个react native项目 总体上,那个项目可以分成三个部分 1、手机端app,负责展示数据 2、爬虫服务器,负责爬取教务系统信息,返回给手机端app 3、广外教务系统,显示学生信息...当客户端传输登录帐号密码时候,爬虫服务器进行模拟登录,并保存cookie缓存,生成一个token返回给app; app此后凭借token向爬虫服务器请求信息,爬虫服务器根据token选取cookie...但是,手机客户端本来就是一个具有很强处理能力终端,为什么要把这个工作屈身在一个服务器上呢。应该让每一个客户端做处理,拜托爬虫服务器才对啊 尝试cookie 于是在手机程序上开始做尝试。...针对常用网络请求–GET和POST,分别写了一个接口函数

3K00

React 面试筹备不完全指南

如何做好 React 面试筹备 开篇 我们今天主要讲解内容就是关于 React 面试相关相信你面试,也会被问到各种各样非常多问题,举几个例子你看看,自己心里想一想,你会怎么回答?...框架全面了解; 这需要你日常开发,不断积累总结,有意识主动探索和思考,今天就分享一下自己总计和思考,没有绝对正确,但我相信一定对你有所启发; 2:面试问题解答思路和技巧; React...但是从实际编码上来讲,可以是纯函数组件或者类组件,也可能在函数中产生影响 UI 生成副作用,比如直接操作 DOM 或者绑定事件等。 React 我们只需要关心两件事:数据与组件。...比如 React NativeReact 360 等, 这里主要靠虚拟 DOM 来保证实现。 这使得 React 适用范围变得足够广 但作为一个视图层框架,React 劣势也十分明显。...() 函数调用,返回称为 “React 元素” 普通 JavaScript 对象。

80000

Taro3.2 适配 React Native 之运行时架构详解

Metro 是针对 React Native JavaScript 模块打包工具,接收一个入口文件和打包配置,将项目中所有依赖打包在一个或多个js文件。... Taro ,入口是按照小程序方案来定义,要运行在 React Native 端,需将这些配置转换为 React Native 相关配置,生成可运行在 React Native 入口文件。...Native 现有方案实现 onResize, React Native,可监听屏幕高度变化, Taro ,是通过监听屏幕宽高变化来触发该方法 onTabItemTap , TabBar...: Current.app,返回当前小程序应用实例 Current.page,返回当前小程序页面实例, Current.router,返回当前小程序路由信息 React Native 端,也是调用...Navigation 导航 获取到路由参数,返回到 router 对象,目前暂不支持 onReady 等生命周期方法 原生 React Native 应用支持 有开发者提到,对于目前已经存在

2.5K30

「译」为 JavaScript 开发者准备 Flutter 指南

React Native 欧洲 演讲《 React Native — Cross Platform & Beyond 》,讨论并演示了 React 生态系统一些不同技术, 包括 React...过去几年看过所有前端技术尝试了 Flutter 后最为兴奋。在这篇文章将讨论为什么它令我如此激动,并介绍如何尽快开始使用它。...仍然非常看好 React / React Native,并且知道许多大公司正在大规模使用它们,但我总是喜欢看到其他想法或者寻找其他方法来实现类似的目标,无论是去学习或者改变目前技术栈。... Dart ,main 是一个特殊、必需顶级函数,在这个函数应用程序开始执行。 因为 Flutter 是由 Dart 构建,main 函数也是这个工程主入口。...如果你喜欢 ReactReact Native,欢迎 Devchat.tv 订阅我们 podcast - React Native Radio。

1.3K30

React 作为 UI 运行时来使用

这样做会造成性能上问题和潜在 bug 。例如,当商品列表顺序改变时,原本一个输入框内容仍然会存在于现在一个输入框 — 尽管事实上商品列表里它应该代表着其他商品!...这就是为什么每次当输出包含元素数组时,React 都会让你指定一个叫做 key 属性: ? key 给予 React 判断子元素是否真正相同能力,即使渲染前后它在父元素位置不是相同。...局部状态是如此有用,以至于 React 让你组件也能拥有它。 组件仍然函数但是 React 用对构建 UI 有好处许多特性增强了它。每个组件所绑定局部状态就是这些特性之一。...例如,useState 就是一个 Hook 。 ? 它返回一对值:当前状态和更新该状态函数。...effect 可能需要被清理,例如订阅数据源例子。订阅之后将其清理,effect 能够返回一个函数: ?

2.5K40

我们是如何将 Cordova 应用嵌入到 React Native

重写一个应用是一件简单事,可是演进一个应用则是一件复杂工作。 过去一年多里,在工作上主要职责是:手机 APP 开发。...尽管,已经尽量去保证 90% 左右单元测试覆盖率,但是仍然没有 100% 把握(甚至 90% 都没有),来保证了解每一行代码。...React Native 嵌入 Cordova WebView React Native 嵌入 Cordova WebView 并不是一件容易事,对于我们而言,工作量大概是一两个月。...React Native 处理 WebView 使用 RN 开发 Growth 3.0 时候,就发现 React Native WebView 是有一些明显。...React Native 重写 Cordova 插件:复杂插件调用 在那篇《Ionic 与 Cordova 插件编写:基于事件与广播机制》介绍了一下项目里,所需要一个Native 发出事件例子

4.8K60

ReactJs和React Native那些事

2,React Native目的 是希望我们能够使用前端技术栈就可以创建出能够不同平台运行一个框架。可以创建出在移动端运行app,但是性能可能比原声app差一点。 ...**这问题变得更加严重时候是2007年。罗德岛州普罗维登斯商业创新工厂会议上发表讲话,理查德·沃曼也是。演讲之后理查德上来介绍自己并且还称赞了演讲。他真的是很有雅量。...有时仍然会在本不应该时候头脑发热。但是真的很享受有所改善带来好处。 ...watchify是一个browserify封装,其packages.json配置与browserify完全一样,且无需改变”browserify”字段名。...8、will 函数进入状态之前调用,did 函数进入状态之后调用  componentWillMount()  componentDidMount()  componentWillUpdate(object

1.9K100

React Native推送通知:完整操作指南

React Native 推送通知架构 我们深入了解如何在 React Native 应用实现推送通知技术细节之前,理解React Native推送通知工作原理可能会有所帮助。...该函数等待接收通知权限 status 。 接下来,我们检查是否已授予权限。如果没有,我们会显示一个关于错误警告,并立即从函数 return 。如果令牌请求过程成功,我们将从函数返回令牌。... React Native 处理接收到通知 要处理接收到通知,我们首先需要有一个事件监听器,每当用户点击通知时都会被调用。...让我们看看这些问题原因以及如何解决它们: 无法React Native 应用运行 Expo 通知:这是因为 Expo 通知库依赖于其他 Expo 库。...Notifee 无法 Expo 项目中运行:不幸是,截至撰写本文时,这仍然一个持续存在问题。最好是从 Expo 中弹出或者启动一个React Native 项目。

78510

React Router v4教程:为你 React 应用创建路由

博文中,将引导你搞懂 React 中路由概念。...那么你认为这是怎样实现呢?程序添加路由器可以解决这一需求。 React 路由 这将把我们带到本文主题:React Router v4。... React Conf 2017 演讲,他们通过展示如何将路由概念无缝地从 Web 平台投射到 Native 平台,以及将 React Router 集成到 VR 并在 React Native...如果你仍然需要访问历史记录,HTML5 提供了一个内置 API,允许我们通过 pushState 和 replaceState 方法修改 History 对象。...但是我们希望 '/' 仅匹配我们渲染函数,因此使用 exact 明确地实现了这一点。 4. 路由只能有一个单一子元素: 这就是我们需要在 包装路由原因。

2K20

【移动架构】Flutter vs React Native:最后一句话。

做出决定最简单方法是回顾历史。让我们沿着怀旧之路走一趟。早在2000年初,JAVA就有两个UI框架。一个是AWT,它是一种为多个操作系统构建UI方法,同时仍然保持操作系统外观。...为什么要离题? 如果您一直关注React Native vs Flutter 辩论,您应该很熟悉这一点。...React Native一个使用React Underthe hood绝妙策略,它允许您转移现有的React开发者技能集。...任何透明都是不好,因为它是一个泄漏抽象[3]。(记住GWT)。对漏洞百出抽象法则推论是,你永远不应该选择一种可以转换成另一种语言语言。...第五轮:一触即发 最后决定: 如果要利用现有的开发人员技能集,请选择React Native。在当前的人才争夺战,当你不能总是吸引最好的人才时,这比以往任何时候都更加真实。

3.5K20

React 教程:React 快速上手指南

React 是一座耸立 JavaScript 代码海上醒目的灯塔 当然 React 并不是唯一选择,但目前它是最受欢迎、最稳定、最具有创新性解决方案之一,虽然它仍然不断升级,但更多改进,而不是增加功能...此外,当年还出现了React NativeReact Native背后想法并不是什么全新东西,不过看起来很有趣,尤其是因为它得到了 Facebook 支持。...实际上展示上述代码还有另一个原因。通常,开发人员不理解我们为什么需要执行以下操作: 1import React from 'react'; 代码片段应该是能够自解释。...前面提到了 Babel,这是一个工具,可以帮助我们预览那些尚未在 JavaScript (更确切地说是浏览器)支持东西,或者以某种方式对 JavaScript 进行扩展(或者类似于 TypeScript...简而言之, JavaScript ,就是今天代码明天仍然能用;这可能需要为此专门再写一篇文章。

1.4K30

每日前端夜话(0x05):2018年JavaScript状态调查(下)

但事情远未解决:Airbnb最近发表了一系列文章,解释了为什么他们决定放弃React Native而转向Native Apps用于他们下一代产品。...作为React Native替代方案,如果不想用React模式,JavaScript编写跨平台应用开发者可以关注Weex,这可以让他们使用Vue.js生态系统。...Carlo是一款全新“Headful Node应用程序框架”,由Google发布,构建于Puppeteer之上;还有Flutter:它不是像React Native那样构建一个JavaScript“桥...但代码是用Dart编写,所以React Native仍然会与大多数熟悉React系统JavaScript开发人员有关系。 其它工具 JavaScript生态系统不仅限于库和框架。...你能猜出哪种技术每个类别夺魁吗? (注意:我们已从奖项中排除ES6以避免数据偏差) 最满意奖 获得用户满意百分比最高库 ?

2.1K40

React Native实践有感

总之,RN一个开发者维护情况下,那么对开发者要求是需要兼顾Android和iOS两个平台,这也是为什么说学了RN迟早安卓和iOS都要学。...,升级到RN 0.63版本会导致react-navigation老版本依赖库react-native-safe-area-view报错。...所以连带也需要升级react-navigation,但我上面提到升级react-navigation风险比较大,需要比较大effort去做,所以这里还是保持RN版本小于0.63,通过react-native-fix-image...而且iOS 14beta版RealmJS引发了一个crash,导致所有iOS 14beta版用户都受到影响,虽然说这个crashiOS 14beta2迭代中就不存在了,但为了保险起见,还是决定升级...为此曾尝试升级到v6.6版本,作为一个暂时解决方案,但是安装依赖失败这一点简直不能忍,于是决定彻底抛弃RealmJS,改用Realmnative SDK。

2.5K10

翻译 | Thingking in Redux(如果你只了解MVC)

经过一番讨论,我们最终做出决定是:React-Native。学习一门新“语言”或者框架并不是个大问题,但是老兄得告诉你,React-Native和Redux确确实实是块难啃骨头。...reducer那一步,不需要额外信息。 同时,一般这么做将调用一个api终端以及诸如此类东西,但是为了简洁,没有将其包含进来。...你必须时刻返回一个,所以这里使用ES6展开运算符将传入state值拷贝过来。...是react-reduxconnect函数神奇实现了这些功能。...虽然你仍然需要做一些基础模版设置填充,但是希望这解释清楚了如何以redux方式进行思考。 有些问题曾经让掉到坑里一段时间(比如:信息传到了哪?

1.3K100

React Native 未来与React Hooks

先说对跨平台理解: 一套逻辑可以多个平台运行,更多是避免各平台业务逻辑不统一,而对工作量减轻是不明显!不明显!不明显! 同时一个企业项目大了之后,一般也不会局限于一个框架之内。...二、React-Native 0.59.x 选择升级版本之前,我们需要了解 React-Native 版本是有 0.A.B 大 A 小 B 版本号设定,而在 React-Native 使用过程一个感受就是...然后 React-Native 版本升级一直是个头大问题,一般会先在自己开源项目中躺坑,本次开源项目 GSYGithubAPP ,是从 0.57.8 直接升级到 0.59.4 版本,...总结 其实这也是为什么React-Native 等跨平台开发,其实并没有降低工作量原因。...而对于 React Hooks ,理解上而言,函数式编程可能更贴近“未来”形态(虽然并不特别确定),而 React Hooks 确实有着明显优势: 可以更好减少我们代码量。

3.7K30

苹果拒绝支持PWA行为对Web贻害无穷!

本来很想开发一个PWA,但是由于这种使用iOS比例,导致不可行,所以我们就React Native(这是一个了不起决定)。...固定标题闪烁(最大心病,这就是为什么最终自己产品上( brewlog.com )禁用它原因) 300ms 延迟后终于从移动版 Safari 移除,却没有全屏模式下移除(Apple没有回应...(说句良心话, 几年前还没有 React Native 这个选择) 一旦引入了一个包装器,你仍然需要通过 app store发布自己应用。...React Native 来救急 不过,你还有另外一种选择,这是一个令人惊喜选择,来自于 Facebook 工程师们:React Native。...作为一个开发人员,你要做最重要事情之一就是:决定把自己时间用在哪里,所以在这里就不建议你学 React Native 了。

1.9K30
领券