Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 0 additions & 24 deletions App.js

This file was deleted.

15 changes: 0 additions & 15 deletions ReduxFormInput/MyInputWrapper.js

This file was deleted.

24 changes: 0 additions & 24 deletions ReduxFormInput/index.js

This file was deleted.

2 changes: 1 addition & 1 deletion index.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
*/

import {AppRegistry} from 'react-native';
import App from './App';
import App from './src/App';
import {name as appName} from './app.json';

AppRegistry.registerComponent(appName, () => App);
15 changes: 15 additions & 0 deletions src/App.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
import React from 'react';
import {Provider} from 'react-redux';

import {store} from './store';
import TestForm from './TestForm';

const App: () => React$Node = () => {
return (
<Provider store={store}>
<TestForm />
</Provider>
);
};

export default App;
28 changes: 28 additions & 0 deletions src/TestForm.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
import React from 'react';
import {reduxForm, Field} from 'redux-form';

import TextField from './TextField';

const normalizer = (val) =>
String(val || '')
.replace(/-/g, '')
.split('')
.join('-');

const formatter = (val) => String(val || '').toUpperCase();

const TestForm = () => {
return (
<Field
name="field"
placeholder="Type here..."
component={TextField}
normalize={normalizer}
format={formatter}
/>
);
};

export default reduxForm({
form: 'testForm',
})(TestForm);
16 changes: 16 additions & 0 deletions src/TextField.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import React from 'react';
import {TextInput} from 'react-native';

const TextField = (props) => {
const {input, ...restOfProps} = props;

return (
<TextInput
value={props.input.value}
onChangeText={props.input.onChange}
{...restOfProps}
/>
);
};

export default TextField;
11 changes: 11 additions & 0 deletions src/store/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import {createStore, combineReducers} from 'redux';
import {reducer as reduxFormReducer} from 'redux-form';

const reducers = combineReducers({form: reduxFormReducer});

const rootReduer = (s, a) => {
console.log('s a', s, a);
return reducers(s, a);
};

export const store = createStore(rootReduer);
4 changes: 0 additions & 4 deletions store/index.js

This file was deleted.

Empty file removed store/reducer.js
Empty file.