在React Native中,有一些第三方组件可以编译自己的库,这些库可以包含在主React项目中。这些第三方库的例子如下:
现在,我非常想用链接库创建自己的React Native组件(仅限iOS,所以我只需要使用此方法链接的Cocoa库:https://facebook.github.io/react-native/docs/linking-libraries-ios.html),到目前为止,我发现的全是:http://moduscreate.com/react_native_custom_components_ios/
但是,生成的项目不会指定库目标,也不能链接到其他项目。
我还尝试过复制Touch ID存储库并尝试更改该代码的代码,但是,我发现它不可编译而没有从不同的项目中引用,而后者又是要编译的项目。
我在哪里可以找到有关如何操作的指南?谢谢!
答案 0 :(得分:27)
React-native-cli提供new-library命令:
react-native new-library --name <YourNewLibraryName>
通过从react-native library复制样本文件,调用此方法将在Libraries
目录中生成一个样本库。
React Native有几个专门用于编写Native Modules和Native UI Components的文档,具体取决于您希望实现的目标。
完成后,按照您已提及的instructions链接您的组件。
答案 1 :(得分:0)
看看官方的Facebook指南Native Modules Setup。它说明了如何开始:
$ yarn global add create-react-native-module
$ create-react-native-module MyLibrary
这将生成一个README.md
,其后续步骤如下:
react-native-my-library
入门
$ npm install react-native-my-library --save
基本上是自动安装
$ react-native link react-native-my-library
用法
import my-library from 'react-native-my-library'; // TODO: What to do with the module? my-library;
答案 2 :(得分:0)
$ yarn global add create-react-native-module
$ create-react-native-module NameOfLibrary
将为您生成一个模板,您可以在index.js中编写自定义UI代码,并在认为合适的地方对其进行扩展。
答案 3 :(得分:-11)
在react-native中创建组件:
ReactNative.AppRegistry.registerComponent('your_project_name', ( ) => App);
要注册此组件,您应该使用:
data = [{'a':1,'b':2,'c':3}]