原生

雇用 Top 3%自由职业者反应本地开发人员

Toptal.是最拓扑开发人员,工程师,程序员,编码器,建筑师和顾问的市场。顶级公司和初创公司选择Toptal React Freelancers for The Toptal Freelancer,了解他们的关键任务软件项目。

无风险审判,仅在满意时付款。

客户率 Toptal. React Native Developers4.4 / 5.0平均截至299年3月27日,截至2021年3月27日

通过领先的品牌和初创公司信任

租用自由职业者的原生开发人员和工程师

约翰州的Hebert

自由职业者反应本地开发商

美国Toptal. Member Since December 13, 2016

Johnathan拥有15年的经验,编写Web应用程序,跨越消费者生产力软件到关键任务金融交易平台。他对前端JavaScript和浏览器API具有广泛的知识,以及具有诸如React和Redux的流行框架和库的重要体验。约翰坦'S深度全堆栈体验包括Node.js和Express,MongoDB以及更多传统技术,如PHP,ASP.NET和MySQL。

展示更多

j源玉米茹

自由职业者反应本地开发商

墨西哥Toptal. Member Since November 5, 2015

九源是一名软件工程师,拥有超过5年的经验,几乎可以在几乎所有可能的地方工作到政府机构的自由职业机构。他对JavaScript有一种特殊的热情。他可以从头开始创建休息和API,并使用库和框架,如React Native,Angular,React.js和Backbone。他曾在广泛的项目中工作,要求广泛的知识和出色的沟通技巧。

展示更多

Arpit Agrawal.

自由职业者反应本地开发商

印度Toptal. Member Since October 31, 2018

ARPIT是一种以产品为导向的全堆栈Web开发人员,主要具有角度和反应原生。他的专业知识在于构建初创公司和中型公司的MVPS,可缩放的微服务,无服务器基础架构,Web爬虫,通知应用,休息/套接字,基础架构建模,复杂算法,AWS和部署。 ARPIT可以单手拔掉项目,是将想法转换成原型的完美候选人。

展示更多

加布里埃尔公牛

自由职业者反应本地开发商

加拿大Toptal. Member Since February 9, 2014

加布里埃尔是一位成功的开发商,在开发,设计和品牌中擅长。他每天都结合这些技能来想象,绘制和构建他客户的惊人的网站和Web应用程序,从初始展开和最终部署中的愿景。

展示更多

Dino Trojak.

自由职业者反应本地开发商

克罗地亚Toptal. Member Since April 15, 2015

Dino喜欢建立质量的软件并尝试新技术。他的首选语言是JavaScript。他相信敏捷的实践和TDD,这意味着他致力于令人敬畏的测试和'T少任何东西。这意味着他的定义"refactoring"不考虑代码。他不断努力改善他不断扩大的技能集。

展示更多

Stanislav Krasnoyarov.

自由职业者反应本地开发商

俄罗斯Toptal. Member Since November 29, 2014

斯坦是一个CTO和一个拥有15年经验的全堆员工程师。他在过去的七年里度过了Web和移动应用程序。他'擅长设计架构和实现敏捷开发过程。技术的技术's的工作包括:node.js,elixir,rails,Angularjs,React,React Native,Objective-C,iOS,Java,Android。他'S还熟悉C ++,Haskell,C#/。网。他是一个热情的程序员和一个伟大的人知道。

展示更多

达斯汀卡斯

自由职业者反应本地开发商

美国Toptal. Member Since September 1, 2018

Dustin一直是一个专业的前端工程师超过十年,并在大小的公司和机构工作。他'热情和致力于他的工艺,他总是为他的雇主和客户提供额外的英里。

展示更多

斯科特jungwirth.

自由职业者反应本地开发商

美国Toptal. Member Since June 20, 2018

斯科特是一名工程领导和技术创新者,近年来的经验,旨在通过团队合作,创新和发展的文化提供特殊产品。

展示更多

立即注册以查看更多档案。

开始招聘

招聘指南

雇用一个伟大的反应本地开发人员指南

反应本地开发人员需要具有特定的一组技能来有效。在不了解正确的主题追求的情况下,缩写开发人员候选人是否适合您的项目可能是一个挑战。

阅读招聘指南

反应本土招聘资源

更多资源来聘请原生开发人员

职位描述模板

面试问题

职位

TrustPilot.
Toptal. in the press

...允许公司快速组装具有特定项目的合适技能的团队。

尽管对编码人员的需求加速了,Toptaltal旨在自行为几乎常春藤联盟级审查。

我们的客户
构建一个全球使用的跨平台应用程序
Thierry Jakicevic.
构建一个全球使用的跨平台应用程序
1
2
3
为游戏创建一个应用程序
Conor Kenney.
为游戏创建一个应用程序
1
2
3
领导数字转型
Elmar Platzer.
领导数字转型
1
2
3
推荐书

三普国不会'T存在没有顶尖。顶部项目使我们能够用产品经理,铅开发商和高级设计师迅速发展我们的基础。在60多天内,我们从概念到阿尔法。速度,知识,专业知识和灵活性是秒数。 Toptaltal团队作为三级队员的三级队员的一部分。他们贡献并就像其他人一样贡献并获得了发展的所有权。我们将继续使用TOPTAL。作为一个启动,他们是我们的秘密武器。

布兰特利步长,首席执行官& Co-Founder

三级

我对Toptaltal的经验非常满意。我必须与我一起工作的专业人士在几个小时内与我一起。我知道在与他讨论我的项目后,他是我想要的候选人。我立即雇了他,他浪费了浪费时间来到我的项目,甚至通过添加一些优秀的设计元素来加强额外的英里,以增强我们的整体外观。

Paul Fenley,导演

k dunn.& Associates

我与令人难以置信的 - 聪明,驱动和响应性的开发人员。它曾经很难找到优质的工程师和顾问。现在它是't.

Ryan Rockefeller,CEO

辐射群

Toptal.立即了解我们的项目。我们与阿根廷的特殊自由职业者与阿根廷,从第1天沉浸在我们的行业中,与我们的团队无缝混合,理解我们的愿景,并产生了顶级缺口结果。 Toptal与卓越的开发人员和程序员相连,非常容易。

Jason Kulik,联合创始人

PROHATCH.

作为一个有限资源的小公司,我们可以'不起赚得昂贵的错误。 Toptal为我们提供了一个经验丰富的程序员,他们能够击中地面运行并立即开始贡献。这是一个伟大的经历和我们'd再次在心跳中重复。

斯图尔特Pocknee,校长

站点特定的软件解决方案

我们使用Toptal聘请开发人员,具有广泛的亚马逊网络服务体验。我们采访了四名候选人,其中一个候选人竟然有适合我们的要求。该过程快速有效。

ABNERGUZMÁNVILLA,CTO和首席科学家

照片kharma.

Sergio是一个令人敬畏的开发人员。顶级陷波,响应,并有效地完成了工作。

Dennis Baldwin,首席技术专家和联合创始人

PriceBlink.

与马林一起工作是一种快乐。他是有能力,专业,灵活的,非常快速地了解所需的内容以及如何实现它。

andréFischer,CTO

发布

我们需要一个专家工程师,他们可以立即启动我们的项目。辛巴纳斯与他的工作超出了我们的期望。不得不采访和追逐专家开发商是一个优秀的时光,让每个人都对我们的选择感到更加舒适,以改变平台来利用更强大的语言。 Toptog易于方便地制作了该过程。 Toptal现在是我们寻找专家级别帮助的第一名。

Web开发的高级VP德里克未成年人

Networld Media Group.

Toptal.'S开发人员和建筑师都非常专业,易于使用。他们生产的解决方案相当定价和最高品质,减少了推出的时间。再次感谢,Toptal。

Jeremy Wessels,CEO

Kognosi.

我们拥有Toptal的伟大体验。他们将我们与完美的开发人员配对,为我们的应用程序并使过程非常容易。它也很容易超出初始时间范围,我们能够在我们的项目中保持相同的承包商。我们绝对推荐顶尖,用于快速和无缝地找到高质量的人才。

Ryan Morrissey,CTO

应用业务技术,LLC

I'M Toptal令人难以置信地印象深刻。我们的开发人员每天与我沟通,是一个非常强大的编码器。他'真正的专业人士,他的工作很棒。顶部5星。

Pietro Casoar,CEO

Ronin Play Pty Ltd

与Toptal一起工作是一个很好的体验。在使用它们之前,我花了很长时间采访其他自由职业者和尚未'找到我需要的东西。与Toptal一起参与后,他们在几天内与完美的开发人员匹配。开发商I.'m不仅可以提供质量代码,而且他还提出了我达到的事情的建议't thought of. It'对我来说清楚,阿拉夫里知道他在做什么。强烈推荐!

乔治城,首席执行官

Buravard,Inc。

作为顶级合格的前端开发人员,我也运营了自己的咨询练习。当客户来找我来帮助填补他们的团队上的关键角色时,Toptal是我唯一舒适的推荐的地方。 Toptal.'整个候选池是最好的。 Toptal是我的最佳价值我'在近一年的专业在线工作中发现了。

Ethan Brooks,CTO

Langlotz专利&商标作品,Inc。

在嘻嘻哈哈'早期,我们以及时的方式,我们需要一流的开发商,以实惠的价格。 Toptal送货!

Lara Aldag,CEO

h

Toptal.让候选人非常容易,让您能使他们有能使他们有能力提供。我肯定会向寻求高技能开发人员的人推荐他们的服务。

Michael Gluckman,数据经理

mxit.

Toptal.迅速匹配我们的项目与最佳开发人员的能力只是一流的。开发商已成为我们团队的一部分,我对他们中的每一个都证明了专业承诺的水平。对于那些希望远程工作的人与最好的工程师来说,看起来不仅仅是Toptaltal。

Laurent Alis,创始人

临身

Toptal.让找到合格的工程师微风。我们需要经验丰富的ASP.NET MVC架构师来指导我们的启动应用程序的开发,并在不到一周内为我们提供三位伟大的候选人。在我们选择后,工程师立即在线并击中地面运行。它比我们自己发现和兽医候选人更快和更容易。

杰夫凯利,联合创始人

协调解决方案

我们需要在Scala中的一些短期工作,Toptal在24小时内发现了我们一个伟大的开发人员。这不仅仅是通过任何其他平台都无法实现。

Franco Arda,联合创始人

whatadswork.com.

Toptal.为正在进行快速发展和规模的企业提供禁令解决方案。每个工程师我们'通过Toptal签约已经很快集成到我们的团队中,并将其工作持有最高标准的质量,同时保持炽热的发展速度。

Greg Kimball,联合创始人

nifti.com.

如何通过TOPTAL聘请母语开发人员

1

与我们的行业专家交谈

Tophteal Engineering主任将与您合作,了解您的目标,技术需求和团队动态。
2

与手工选择的人才合作

在几天内,我们'LL向您介绍您的项目的正确React Maintopler。平均匹配时间在24小时内。
3

右边合身,保证

与您的新反应本地开发人员合作进行试用期(仅在满意时支付),确保他们'在开始参与之前,右边适合。

常见问题解答

  • Toptal如何对本地开发人员不同?

    在Toptal,我们彻底屏蔽了我们的原始开发人员,以确保我们与最高口径的人才相匹配。每年申请加入Toptal Network的100,000多人,削减少于3%。您将与工程专家(从不泛化招聘人员或人力资源代表)合作,了解您的目标,技术需求和团队动态。最终结果:来自我们网络的专家审计人才,习惯符合您的业务需求。 现在开始。

  • 我可以在不到48小时穿过Toptal雇用本地开发人员吗?

    根据可用性以及您可以进行的速度,您可以在注册的48小时内开始使用React Native开发人员。 现在开始。

  • Toptal React Maintopers的无风险试用期是多少?

    我们确保您和您的反应本机制开发人员之间的每次参与始于最多两周的试用期。这意味着您有时间确认订婚将是成功的。如果您对结果完全满意,我们会为您收取时间并继续接触,只要您想要。如果你没有完全满意,你将不会收取费用。从那里,我们可以通过部分方式,或者我们可以为您提供可能更适合的另一个专家,并与我们将开始第二名,无风险的审判。 现在开始。

分享
原生

如何聘请伟大的反应本地开发人员

原生是用于在iOS,Android和UWP上呈现移动应用程序的库。使用React Native,它是可能的(在大多数情况下)来编写一次代码并部署到所有可用的目标平台 - 这可能是为什么您希望聘请专用React Nation Developers。

原生 Shares许多概念和库的反应,因此对于开发人员至少熟悉Web对Web的反应以及其常见模式,这是重要的。它还建议使用React Native Programmer精通JavaScript,尤其是ES6语法。

我们的许多问题 反应招聘指南 在聘请应用程序开发人员时适用于对原始的反应,因此在采访时更好地牢记这两个指南。当然, javascript.招聘指南 同样适用:作为指导提到,在对JavaScript框架中并成为其中的专家之间有很大的区别,并且在努力做出反应和反应本地工作时,JavaScript专家就是至关重要的。

反应原生面试问题

让我们潜入一些反应本地面试问题,以帮助您评估您的候选人。

什么是原生组件?

组件是React Native应用程序的构建块。 React Native提供了一组组件,即映射到反应本机开发人员可以使用的每个平台上的相应本机组件。

Some components can be used on all platforms (like View, Button, and FlatList) while others are platform-specific, as they map to native components that exist only on iOS or Android: For example, iOS does not have a hardware back button, so a BackHandler component for iOS apps would not make sense.

The developer can create their own component by extending the 反应.Component class, and implementing the Render method:

export default class App extends React.Component {
  render() {
    return (
      // my component's visual tree
    );
  }
}

在列表中显示项目的最佳方式是什么?

原生 offers a VirtualizedList component that provides virtualization out of the box. While VirtualizedList can be used directly, the more high-level FlatList (display items in a scrollable list) and SectionList (same as FlatList but with grouping and custom sections) implementations are fit for most use cases.

Some things are important to keep in mind when working with a VirtualizedList, however.

There’s no assurance that the internal state of the items in the list will be kept when scrolling the list: Based on the amount of elements and the level of scrolling, the list might dispose of some elements outside of the viewport. Those elements will be recreated from scratch based on props when coming back into the viewport. So, the developer needs to make sure that the item can be recreated based on props alone.

Items should specify a Key property which identifies them uniquely. Alternatively, it’s possible to provide a custom KeyExtractor in the list’s definition:

<FlatList KeyExtractor="{(item) => //function that uniquely identifies the item }" />

It’s a good practice to make sure list items do not re-render if passed in the same props they already have. This can be accomplished by implementing shouldComponentUpdate in the item’s component, or alternatively inherit from the 反应.PureComponent class, which provides an implementation of shouldComponentUpdate that does shallow prop and state comparison.

你如何在原生反应中的组件?

Styling is specified by plain JavaScript objects, and all React Native components accept a Style prop that can be set with the object specifying the style.

Note that while the syntax resembles CSS, it’s not CSS, and styling a React Native application’s components does not follow the same conventions. Notably, all properties follow the camelCase convention instead of dash-case (background-color becomes backgroundColor) and layout can be specified only using the Flexbox algorithm.

由于样式定义是在代码中完成的,因此可以易于参数化样式,并执行通常CSS预处理器/扩展(较少,SASS)的事情:

import { StyleSheet } from 'react-native';
import { primaryColor, secondaryColor } from './style/consts'; // values defined in another .js file

let width = 50;

///...

const style = StyleSheet.create({
  'color': primaryColor,
  'backgroundColor': secondaryColor,
  'width': width
});

您如何调试React Native应用程序?

在仿真器中运行React Native应用程序的同时,可以通过“摇动”设备(通过选择仿真器中的“摇动”手势)或按命令-d(iOS)或控制/命令 - M(Android)。 Developer菜单将显示“启用JS调试”菜单条目,以及其他事项。点击后,可以浏览到 http:// localhost:8081 / debugger-ui 使用铬/铬,显示调试器。

Log traces are visible by running react-native log-android for Android, and react-native log-ios for iOS, while the emulator is up.

如果使用Redux, 反射龙 特别有用,可查看所有API调用和派遣的操作。

我们现有的Codebase是在Xamarin中,您将帮助将其移植以对原始作出反应。有什么问题?

与我们的其他作出原生面试问题不同,这可能不适用于每个项目。但如果它确实如此,这肯定是考虑的重要份额。

反应原生和 xamarin.forms. 采用相同的方法来制作跨平台应用程序:两者都采用UI定义(虚拟DOM或XAML)并将其转换为本机代码。

两者之间有两个主要差异:

  • 选择语言:对于Xamarin来说,它几乎总是C# - 但可能是任何其他可用于.NET Framework-and JavaScript的其他语言。
  • 它们可用的开发平台:Linux,MacOS和Windows的React Native,而Xamarin仅在Windows和MacOS上正式可用。

While React Native and Xamarin.Forms do conceptually the same thing, the abstractions they use are not directly compatible. For example, a component available on React Native might not necessarily be available on Xamarin, and vice versa. Also, the same abstraction is often implemented in different ways across the two frameworks: Take FlatList and SectionList on React Native, which map to their corresponding concept on both iOS and Android, and ListView on Xamarin.Forms, which conflates the two into one single UI component.

如果反应本地开发人员要从Xamarin.Forms解决一个端口,那么他们将至少有一些与C#的经验是大量的有益,并且理想情况下是Xamarin的一些经验。

原生反应与反应之间的关系是什么?

反应 is a JavaScript library that allows the developer to define a user interface in a declarative way. If offers some infrastructure when it comes to state handling (props for one-way data flow, injected from the outside; state for two-way data flow, internally managed state) and general component lifecycle method hooks.

反应在内存中保持内部表示UI(虚拟DOM)。它使用此表示来计算在道具/状态变化的组件的可视外观中的Δ,以便可以部分更新数据更改数据,从而避免了完全重绘的需求。

原生坐在反应之上,其中React会将Virtual DOM作为HTML文档呈现,在National Maps将虚拟DOM响应到本机IOS /本机Android组件。因此,虽然反应通常与JSX一起使用以生成HTML输出,但是React Native具有自己的一组代表本机组件的抽象的标签。这些本机组件最终会在设备上显示。

因此,如果React组件看起来如下:

class ReactJSComponent extends React.Component {
  render() {
    return(
    <div>
      <p>Hello world!</p>
    </div>
    );
  }
}

...那个等效的反应本地组分可能是:

class ReactNativeComponent extends React.Component { //note that's the same class we're extending
  render() {
    return(
    <View>
      <Text>Hello world!</Text>
    </View>
    );
  }
}

通常用于处理状态(Redux,MobX)和不依赖于UI的大多数插件的库将使用与原始的完全相同的方式,以及适用于反应的大多数模式/最佳实践也适用于原产权。

使用React Native突出本土开发与移动开发之间的重大差异和权衡。

当谈到时,原生有明显的好处 移动应用程序开发:

  • 原生允许跨平台开发:应用逻辑使用相同的语言(JavaScript)编写一次,可以部署到可用的目标平台(iOS,Android和UWP)。本地为特定平台编写应用程序需要在将所述应用程序移植到不同的平台时几乎完全重写。
  • 原生应用程序,具有一些限制(见下文),以JavaScript编写。这可以是一个加号或减去根据情况,但通常,找到与JavaScript经验丰富的开发人员并不像其他语言那么难。
  • 热重新加载是一个很大的反应本机构功能,允许开发人员更改应用程序代码并直接在仿真器中看到这些更改,无需重新编译/重新部署。

反应本地是一个强大的选择,特别是考虑到不断增加的用户群和对其的持续改进。但有一些缺点是被认为是:

  • 虽然在过去两年中表现一直在稳定地改善,但反应本地仍然显着慢于视觉上等同的天然应用,特别是当应用程序大量使用动画或具有复杂的UI时。
  • 某些本机功能不可用直接从React Native使用,并且可能需要在目标平台语言中为每个目标平台编写模块。
  • javascript.是一种主流语言,从而广为人知和使用,但它具有一些严重的缺点。编写和维护一个缩放到一定尺寸的JavaScript应用程序可能具有挑战性。

如何在不同的平台上做出反应本地行为?

原生 takes the virtual DOM, generated by React based on the interface definition—i.e. the result gotten from calling the render method on the application’s components. It then uses this to generate native code for each of the target platforms.

That means that, for the most part, the developer doesn’t have to worry about platform-specific details and can rely on React Native outputting the right native code based on the situation. For example, if the developer adds a Text component, it will be transformed into a UITextField on iOS, and into a TextView on Android. The same goes for layout definitions: React Native uses flexbox, and that is translated as proper layout definitions specific to the target platform when the application is deployed.

Sometimes the abstraction provided by React Native is available only on some of the target platforms (an example would be the already-mentioned BackHandler). When that’s the case, it is up to the developer to properly make use of the abstraction. A check for the current platform might be necessary:

import {Platform} from 'react-native';

if (Platform.OS == 'ios') {
  // iOS-specific code
}

There are some cases where React Native does not provide an abstraction layer over native components or functionalities. In those cases, the developer will have to write a native module, in the target platform’s language. That is done by extending the 反应ContextBaseJavaModule for Android apps, and by implementing the RCTBridgeModule in iOS.

With those modules in place, it’s possible to interact with them from React Native using the endpoints explicitly provided by the modules themselves. We simply annotate methods with @ReactMethod on Android and by exporting classes and methods with RCT_EXPORT_MODULE and RCT_EXPORT_METHOD on iOS:

public class MyModule extends ReactContextBaseJavaModule {

  @ReactMethod
  public void myMethod() {
    // implementation
  }

}
@implementation MyModule

RCT_EXPORT_MODULE();

RCT_EXPORT_METHOD(myMethod)
{
   // implementation
}
import {NativeModules} from 'react-native';
// call it like this:
NativeModules.MyModule.myMethod();

在处理原生物的处理状态时有哪些不同的选择?

As it is, React (and thus React Native) does not enforce any kind of global state management. The only patterns available to use for the developer are injecting state into components using props, which are meant to be immutable, and internal component state managed privately through the state property.

涉及全球州管理时有几种选择,越广泛地用于Redux。如果开发人员熟悉READUX对反应,则在使用它在RACK Native上使用它时没有变化。行为完全相同,也是常见的使用模式。

管理全局状态的另一个可用选项是MOBX,它使用观察到和绑定处理状态,LOPPTOUT.js和WPF执行。虽然Redux遵循功能规划范例 - 并且适合那种编程风格,因为这个原因-Mobx可以更容易地接收来自面向对象背景的人。

这两个选项都有效,并且在挑选一个或另一个之前考虑团队的作品很重要。 Redux通常是具有功能规划背景的人的选择,但速度可能是挑战性的。 Mobx提供了一个更平坦的学习曲线,但在应用程序增长到一定尺寸时,它可能会出现问题。

什么是一个干?

一般来说,Thunk是另一个函数返回的函数。它用于在实际需要的结果时推迟计算结果:

function doMyThing() {
  return function() {
    return "my result";
  }
}

该概念对于React(和React Native)开发人员来说很重要,因为它们是用于Redux最受欢迎的中间件之一:Redux-Thunk。允许反应动作,通常只是普通的JavaScript对象,如下所示:

{
  type: "MY_ACTION_TYPE",
  value: "myvalue"
}

...实际直接调度其他行动,如下所示:

function myActionCreator() {
  return function(dispatch, state) {
    dispatch(anotherActionCreator());
  }
}

还有其他中间件的重复,不会直接公开概念 - 最着名的反应传奇 - 但您的反应本地开发人员候选者非常重要,与上述功能编程概念很舒服。

什么是中间件?它如何在Redux中使用?

Redux中间件是由开发人员提供的函数(从外部模块导入,或直接开发)拦截在达到减速器之前派遣的所有操作,可能会对这些操作进行一些操作,然后之后将它们转发到减速器。

因此,中间件提供了一个钩子,可用于在达到减速器之前在操作之前运行自定义操作。这很重要,以及许多库和扩展(例如,上述Redux-Thunk)将自己作为中间件注册。一块中间件返回一个thunk,因为它是返回函数的函数。

示例中间件实现如下所示:

// middleware that does nothing
const myMiddleware = store => next => action => {
  return next(action);
}

Here, store is the application’s store, available from inside the middleware function. That means that store.dispatch is available from inside the middleware, thus making it possible to dispatch more than one action per action received—beware of infinite loops! Then next is a function that returns a function (which will dispatch the action) and expects an action as the parameter.

可以使用以下内容注册上述中间件:

const store = createStore(
  myCombinedReducers,
  applyMiddleware(myMiddleware, otherMiddleware)
)

衡量您的React Native App开发候选人

这些问题的答案应该让您了解移动应用程序开发候选人舒适地与React Native合作的概念。

当然,这种招聘指南并不意味着遵循详尽的面试,而是作为雇用全职或兼职专家的指导方面 - 通常还有更多的既可以反应本土发展和广泛的应用发展。例如,与JavaScript的专用开发人员非常经验丰富,反应应该能够在任何时候拿起React Native及其概念。

与此同时,有一点与原生发展工作但没有与JavaScript或本机发展的广泛体验可能知道上述问题的答案,但并非非常有效地作为React Native App Developer。与生活中的其他一切一样,您的里程可能会有所不同。祝你好运!

特色TOPTAL React Native Publication

最高反应本地开发人员需求量很高。

开始招聘