Преглед на файлове

updated Third Party libs (#5423)

DamarXCV преди 5 години
родител
ревизия
0f3b339092
променени са 1 файла, в които са добавени 94 реда и са изтрити 5 реда
  1. 94
    5
      docs/docs/third-party.md

+ 94
- 5
docs/docs/third-party.md Целия файл

@@ -1,11 +1,100 @@
1 1
 # Third Party Libraries Support
2 2
 
3 3
 ## Redux
4
-!> This is deprecated in favor of [Registering screens with wrapping provider component](https://wix.github.io/react-native-navigation/#/docs/top-level-api-migration?id=registering-screens-with-wrapping-provider-component)   
5
-### registerComponentWithRedux(screenID, generator, Provider, store)
6
-Utility helper function like registerComponent,
7
-wraps the provided component with a react-redux Provider with the passed redux store
8 4
 
5
+Create a HOC which provides the redux store.
9 6
 ```js
10
-Navigation.registerComponentWithRedux('navigation.playground.WelcomeScreen', () => WelcomeScreen, Provider, store);
7
+import { Provider } from 'react-redux';
8
+
9
+let store;
10
+function ReduxProvider(Component) {
11
+    store = store || createStore({});
12
+
13
+    return (props) => (
14
+        <Provider store={store}>
15
+            <Component {...props} />
16
+        </Provider>
17
+    );
18
+}
19
+```
20
+Wrap all Screens, which need the redux store, with the HOC.
21
+```js
22
+import { Navigation } from 'react-native-navigation';
23
+
24
+export default () => {
25
+    Navigation.registerComponent('TestScreen', () => ReduxProvider(TestScreen), () => TestScreen);
26
+}
27
+```
28
+
29
+For more information about how to set up redux read the [react-redux docs](https://react-redux.js.org/)
30
+
31
+## react-native-vector-icons
32
+This liabry can be used to set icons as the following example does.
33
+For available icons read the [react-native-vector-icons docs](https://github.com/oblador/react-native-vector-icons).
34
+
35
+```js
36
+import MaterialIcons from 'react-native-vector-icons/MaterialIcons';
37
+import { Navigation } from 'react-native-navigation';
38
+
39
+export default function startApp() {
40
+  Promise.all([
41
+    MaterialIcons.getImageSource('home', 25),
42
+    MaterialIcons.getImageSource('menu', 25),
43
+    MaterialIcons.getImageSource('search', 25),
44
+    MaterialIcons.getImageSource('add', 25),
45
+  ]).then(([homeIcon, menuIcon, searchIcon, addIcon]) => {
46
+    Navigation.setRoot({
47
+      root: {
48
+        sideMenu: {
49
+          id: 'main',
50
+          left: {
51
+            component: {
52
+              name: 'App.FirstBottomTab.HomeScreen',
53
+            },
54
+          },
55
+          center: {
56
+            bottomTabs: {
57
+              id: 'BottomTabs',
58
+              children: [{
59
+                stack: {
60
+                  id: 'FirstBottomTab',
61
+                  children: [{
62
+                    component: {
63
+                      name: 'App.FirstBottomTab.HomeScreen',
64
+                    },
65
+                  }],
66
+                  options: {
67
+                    topBar: {
68
+                      title: {
69
+                        text: 'Home',
70
+                      },
71
+                      leftButtons: [{
72
+                        id: 'sideMenu',
73
+                        icon: menuIcon,
74
+                      }],
75
+                      rightButtons: [{
76
+                        id: 'search',
77
+                        icon: searchIcon,
78
+                      }],
79
+                    },
80
+                    bottomTab: {
81
+                      text: 'FirstBottomTab',
82
+                      icon: homeIcon,
83
+                    },
84
+                    fab: {
85
+                      id: 'addRecipe',
86
+                      icon: addIcon,
87
+                    },
88
+                  },
89
+                },
90
+              }],
91
+            },
92
+          },
93
+        },
94
+      },
95
+    });
96
+  });
97
+}
11 98
 ```
99
+
100
+Its also possible to to define custom icons without react-native-vector-icons within the iOS and Android project as described [here](https://wix.github.io/react-native-navigation/#/docs/styling?id=custom-tab-icons).