React Native Create Custom Component/Library

后端 未结 4 1984
一向
一向 2020-12-23 12:27

In React Native, there are certain third-party components which compile their own libraries that can be included in your main React project. Examples of such third-party lib

相关标签:
4条回答
  • 2020-12-23 12:57

    Using the react-native Module setup

    $ yarn global add create-react-native-module
    $ create-react-native-module NameOfLibrary
    

    A template would be generated for you, you can write your custom UI code in the index.js and expand on it as deemed fit.

    0 讨论(0)
  • 2020-12-23 13:13

    1. Command: new-library

    React-native-cli offers the new-library command:

    react-native new-library --name <YourNewLibraryName>
    

    Calling this will generate a sample library in your Libraries directory by copying sample file over from the react-native library.

    2. Developing

    React Native has a couple docs specifically for writing Native Modules and Native UI Components, depending on what you want to achieve.

    3. Link component

    Link your component once you're done by following the instructions you already mentioned.

    0 讨论(0)
  • 2020-12-23 13:17

    Take a look at the official Facebook guide Native Modules Setup. It explains how to start:

    $ yarn global add create-react-native-module
    $ create-react-native-module MyLibrary
    

    This will generate a README.md with next steps as follows:

    react-native-my-library

    Getting started

    $ npm install react-native-my-library --save

    Mostly automatic installation

    $ react-native link react-native-my-library

    Usage

    import my-library from 'react-native-my-library';
    
    // TODO: What to do with the module? 
    my-library;
    
    0 讨论(0)
  • 2020-12-23 13:17

    Create Component in react-native :

    const App = ( ) => {
      return (
        <Text>Some Text</Text>
      );
    }
    

    To register this component you should use:

    ReactNative.AppRegistry.registerComponent('your_project_name', ( ) => App);
    
    0 讨论(0)
提交回复
热议问题