Как передать дату в ActionCreator

152
03 сентября 2021, 13:20

У меня есть поле создание поста через input, где после нажатия на enter или кнопки опубликовать пост вызывается функция onAddPost

let onAddPost = () => {
    let text = newPostElement.current.value
    if(text === '' || text === ' ') return
    else{
        let currentDate = new Date()
        props.addPost(currentDate)
    }
}

props.addPost - это ActionCreator который принимает параметр currentDate

export const addPost = (currentDate) => ({ type: ADD_POST, currentDate })

Далее он попадет в reduser

case ADD_POST: {
        let newPost = {
            id: state.posts.lenght + 1,
            date: action.currentDate,
            message: state.newPostText,
            likeCount: 0,
        }
        return {
            ...state,
            posts: [newPost, ...state.posts],
            newPostText: '',
        }
    }

Но при попытке создать такой объект получается ошибка, проблема кроется в этой строчке

let currentDate = new Date()

При передаче чего либо угодно все работает, подскажите, что делать Ошибка: Failed to load resource: the server responded with a status of 431 (Request Header Fields Too Large)

Answer 1

судя по MDN, размер ваших заголовков слишком велик (ссылка)

Попробуйте передавать на сервер дату в другом формате, например в формате YYYY-MM-DD:

else{
    const cDate = new Date()
    const date = cDate.getFullYear() + '-' + (cDate.getMonth() + 1) + '-' + cDate.getDate()
    props.addPost(date)
}
READ ALSO
Анимация набора текста на CSS

Анимация набора текста на CSS

Нашел такой вариант создания анимации набора текста, но он почему-то работает только с текстовым абзацемПопробовал сделать тоже самое со span, ничего...

223
Как выполнить setTimeout по очереди в JavaScript?

Как выполнить setTimeout по очереди в JavaScript?

Я только изучаю JS, Подскажите пожалуйста, как выполнить setTimeout по очереди в JavaScript ?

227
Как выполить scroll при клике на меню? [дубликат]

Как выполить scroll при клике на меню? [дубликат]

Нужно реализовать прокрутку, при клике на определенный элемент меню с анимациейСкролл будет выполняться к выбраному блоку

187
Префиксы css для flex

Префиксы css для flex

Вот код css

268