Я новичок в реакции нативной разработки. И я создал этот пример приложения для заметок, используя Redux для реагирования на нативный. В этом приложении пользователь должен иметь возможность добавлять заметки, и эта заметка должна управляться через онлайн-хранилище. И я создал необходимые действия и редуктор для добавления функциональности заметки. Однако я не смог добавить новую заметку в магазин. Я попытался отладить, и когда он достигает случая "ADD_Note" в редукторе, он автоматически переходит в случай по умолчанию. И независимо от того, какое строковое значение или примечание проходят через действие, оно становится неопределенным в редукторе.
Пожалуйста, обратитесь к моему коду для добавления экрана примечания
import React, {useState, useEffect} from 'react';
import {
StyleSheet,
View,
Text,
TextInput,
Button,
FlatList,
} from 'react-native';
import {useSelector, useDispatch} from 'react-redux';
import * as NoteActions from '../store/actions/Note'; // import note actions
const NoteScreen = () => {
const [note, setNote] = useState('');
const dispatch = useDispatch(); // use dispatch
const noteHandler = text => {
setNote(text);
};
return (
<View style={styles.container}>
<View>
<TextInput
style={styles.textInput}
placeholder="Enter a note"
onChangeText={noteHandler}
value={note}
/>
<Button
title="Add"
onPress={() => {
console.log(note);
dispatch(NoteActions.addNote(note));
}}
/>
</View>
</View>
);
};
const styles = StyleSheet.create({
container: {
flex: 1,
width: '100%',
margin: 10,
},
textInput: {
width: '100%',
marginBottom: 10,
textAlign: 'center',
borderBottomWidth: 1,
},
});
export default NoteScreen;
А ниже приведено действие js файл.
// action types
export const ADD_NOTE = 'ADD_NOTE'
//action creators
export function addNote(note){
return{
type:ADD_NOTE,
date:note
}
}
А ниже находится редуктор js файл
// initial state
const initialState ={
noteList:[]
}
// import actions
import ADD_NOTE from '../actions/Note';
function noteReducer (state=initialState, action){
debugger;
switch(action.type){
case ADD_NOTE:
const newNote = action.data
return{
...state,
noteList: state.noteList, newNote
}
default:
return state;
}
}
экспорт по умолчанию noteReducer;
Пожалуйста, помогите мне.
Заранее спасибо, Йохан