Latest 0.1.1
Homepage https://github.com/wuqiuhao/AwsomeReactNative
License MIT
Platforms ios 9.0
Authors

AwsomeReactNative将React Native封装到了一个Pod库中,便于项目以模块化方式快速引入React Native。

React Native package.json如下:

{
  "name": "AspirinFeedback",
  "version": "0.0.1",
  "private": true,
  "scripts": {
      "start": "node node_modules/react-native/local-cli/cli.js start"
   },
  "dependencies": {
  "react": "16.3.1",
  "react-native": "0.51"
   }
}

如需要添加依赖或修改RN版本可在此库基础上扩展。

Latest podspec

{
    "name": "AwsomeReactNative",
    "version": "0.1.1",
    "summary": "It's an awsome reactnative project.",
    "description": "It's an awsome reactnative project. I try to put react native in a separate project.",
    "homepage": "https://github.com/wuqiuhao/AwsomeReactNative",
    "license": "MIT",
    "authors": {
        "wuqiuhao": "[email protected]"
    },
    "source": {
        "git": "https://github.com/wuqiuhao/AwsomeReactNative.git",
        "tag": "0.1.1"
    },
    "default_subspecs": [
        "yoga",
        "Core",
        "CxxBridge",
        "DevSupport",
        "RCTWebSocket",
        "RCTText",
        "RCTAnimation",
        "RCTImage"
    ],
    "platforms": {
        "ios": "9.0"
    },
    "module_name": "React",
    "swift_version": "4.1",
    "pod_target_xcconfig": {
        "CLANG_CXX_LANGUAGE_STANDARD": "c++14",
        "OTHER_LDFLAGS": "-ObjC",
        "HEADER_SEARCH_PATHS": "'$(PODS_TARGET_SRCROOT)/node_modules/react-native/ReactCommon' '$(PODS_ROOT)/Folly' '$(PODS_ROOT)/boost-for-react-native' '$(PODS_ROOT)/DoubleConversion'"
    },
    "subspecs": [
        {
            "name": "NodeModule",
            "preserve_paths": [
                "node_modules/**/*",
                "package.json",
                "index.js",
                "ReactNative/**/*"
            ],
            "exclude_files": "node_modules/react-native/local-cli/templates/**/*"
        },
        {
            "name": "yoga",
            "source_files": "node_modules/react-native/ReactCommon/yoga/**/*.{h,c}"
        },
        {
            "name": "Core",
            "dependencies": {
                "AwsomeReactNative/yoga": []
            },
            "source_files": "node_modules/react-native/React/**/*.{c,h,m,mm,S}",
            "exclude_files": [
                "**/__tests__/*",
                "IntegrationTests/*",
                "node_modules/react-native/React/DevSupport/*",
                "node_modules/react-native/React/Inspector/*",
                "node_modules/react-native/ReactCommon/yoga/*",
                "node_modules/react-native/React/Cxx*/*",
                "node_modules/react-native/React/Base/RCTBatchedBridge.mm",
                "node_modules/react-native/React/Executors/*"
            ],
            "ios": {
                "exclude_files": "node_modules/react-native/React/**/RCTTVView.*"
            },
            "header_dir": "node_modules/react-native/React",
            "frameworks": "JavaScriptCore",
            "libraries": "stdc++"
        },
        {
            "name": "BatchedBridge",
            "dependencies": {
                "AwsomeReactNative/Core": [],
                "AwsomeReactNative/cxxreact_legacy": []
            },
            "source_files": [
                "node_modules/react-native/React/Base/RCTBatchedBridge.mm",
                "node_modules/react-native/React/Executors/*"
            ]
        },
        {
            "name": "CxxBridge",
            "dependencies": {
                "Folly": [
                    "2016.09.26.00"
                ],
                "AwsomeReactNative/Core": [],
                "AwsomeReactNative/cxxreact": []
            },
            "compiler_flags": "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1",
            "private_header_files": "node_modules/react-native/React/Cxx*/*.h",
            "source_files": "node_modules/react-native/React/Cxx*/*.{h,m,mm}"
        },
        {
            "name": "DevSupport",
            "dependencies": {
                "AwsomeReactNative/Core": [],
                "AwsomeReactNative/RCTWebSocket": []
            },
            "source_files": [
                "node_modules/react-native/React/DevSupport/*",
                "node_modules/react-native/React/Inspector/*"
            ]
        },
        {
            "name": "jschelpers_legacy",
            "source_files": [
                "node_modules/react-native/ReactCommon/jschelpers/{JavaScriptCore,JSCWrapper,InspectorInterfaces}.{cpp,h}",
                "node_modules/react-native/ReactCommon/jschelpers/systemJSCWrapper.cpp"
            ],
            "private_header_files": "node_modules/react-native/ReactCommon/jschelpers/{JavaScriptCore,JSCWrapper,InspectorInterfaces}.h",
            "frameworks": "JavaScriptCore"
        },
        {
            "name": "cxxreact_legacy",
            "dependencies": {
                "AwsomeReactNative/jschelpers_legacy": []
            },
            "source_files": "node_modules/react-native/ReactCommon/cxxreact/{JSBundleType,oss-compat-util}.{cpp,h}",
            "private_header_files": "node_modules/react-native/ReactCommon/cxxreact/{JSBundleType,oss-compat-util}.h"
        },
        {
            "name": "jschelpers",
            "dependencies": {
                "Folly": [
                    "2016.09.26.00"
                ],
                "AwsomeReactNative/PrivateDatabase": []
            },
            "compiler_flags": "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1",
            "source_files": "node_modules/react-native/ReactCommon/jschelpers/*.{cpp,h}",
            "private_header_files": "node_modules/react-native/ReactCommon/jschelpers/*.h",
            "frameworks": "JavaScriptCore"
        },
        {
            "name": "PrivateDatabase",
            "source_files": "node_modules/react-native/ReactCommon/privatedata/*.{cpp,h}",
            "private_header_files": "node_modules/react-native/ReactCommon/privatedata/*.h"
        },
        {
            "name": "cxxreact",
            "dependencies": {
                "AwsomeReactNative/jschelpers": [],
                "boost-for-react-native": [
                    "1.63.0"
                ],
                "Folly": [
                    "2016.09.26.00"
                ]
            },
            "compiler_flags": "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1",
            "source_files": "node_modules/react-native/ReactCommon/cxxreact/*.{cpp,h}",
            "exclude_files": "node_modules/react-native/ReactCommon/cxxreact/SampleCxxModule.*",
            "private_header_files": "node_modules/react-native/ReactCommon/cxxreact/*.h"
        },
        {
            "name": "ART",
            "dependencies": {
                "AwsomeReactNative/Core": []
            },
            "source_files": "node_modules/react-native/Libraries/ART/**/*.{h,m}"
        },
        {
            "name": "RCTActionSheet",
            "dependencies": {
                "AwsomeReactNative/Core": []
            },
            "source_files": "node_modules/react-native/Libraries/ActionSheetIOS/*.{h,m}"
        },
        {
            "name": "RCTAnimation",
            "dependencies": {
                "AwsomeReactNative/Core": []
            },
            "source_files": "node_modules/react-native/Libraries/NativeAnimation/{Drivers/*,Nodes/*,*}.{h,m}",
            "header_dir": "RCTAnimation"
        },
        {
            "name": "RCTBlob",
            "dependencies": {
                "AwsomeReactNative/Core": []
            },
            "source_files": "node_modules/react-native/Libraries/Blob/*.{h,m,mm}",
            "preserve_paths": "node_modules/react-native/Libraries/Blob/*.js"
        },
        {
            "name": "RCTCameraRoll",
            "dependencies": {
                "AwsomeReactNative/Core": [],
                "AwsomeReactNative/RCTImage": []
            },
            "source_files": "node_modules/react-native/Libraries/CameraRoll/*.{h,m}"
        },
        {
            "name": "RCTGeolocation",
            "dependencies": {
                "AwsomeReactNative/Core": []
            },
            "source_files": "node_modules/react-native/Libraries/Geolocation/*.{h,m}"
        },
        {
            "name": "RCTImage",
            "dependencies": {
                "AwsomeReactNative/Core": [],
                "AwsomeReactNative/RCTNetwork": []
            },
            "source_files": "node_modules/react-native/Libraries/Image/*.{h,m}"
        },
        {
            "name": "RCTNetwork",
            "dependencies": {
                "AwsomeReactNative/Core": []
            },
            "source_files": "node_modules/react-native/Libraries/Network/*.{h,m,mm}"
        },
        {
            "name": "RCTPushNotification",
            "dependencies": {
                "AwsomeReactNative/Core": []
            },
            "source_files": "node_modules/react-native/Libraries/PushNotificationIOS/*.{h,m}"
        },
        {
            "name": "RCTSettings",
            "dependencies": {
                "AwsomeReactNative/Core": []
            },
            "source_files": "node_modules/react-native/Libraries/Settings/*.{h,m}"
        },
        {
            "name": "RCTText",
            "dependencies": {
                "AwsomeReactNative/Core": []
            },
            "source_files": "node_modules/react-native/Libraries/Text/**/*.{h,m}"
        },
        {
            "name": "RCTVibration",
            "dependencies": {
                "AwsomeReactNative/Core": []
            },
            "source_files": "node_modules/react-native/Libraries/Vibration/*.{h,m}"
        },
        {
            "name": "RCTWebSocket",
            "dependencies": {
                "AwsomeReactNative/Core": [],
                "AwsomeReactNative/RCTBlob": [],
                "AwsomeReactNative/fishhook": []
            },
            "source_files": "node_modules/react-native/Libraries/WebSocket/*.{h,m}"
        },
        {
            "name": "fishhook",
            "header_dir": "fishhook",
            "source_files": "node_modules/react-native/Libraries/fishhook/*.{h,c}"
        },
        {
            "name": "RCTLinkingIOS",
            "dependencies": {
                "AwsomeReactNative/Core": []
            },
            "source_files": "node_modules/react-native/Libraries/LinkingIOS/*.{h,m}"
        },
        {
            "name": "_ignore_me_subspec_for_linting_",
            "dependencies": {
                "AwsomeReactNative/Core": [],
                "AwsomeReactNative/CxxBridge": []
            }
        }
    ]
}

Pin It on Pinterest

Share This