Ошибка типа: не удается прочитать свойство «тип» неопределенных функциональных компонентов

#javascript #reactjs #redux #compiler-errors #react-redux

#javascript #reactjs #redux #ошибки компилятора #реагировать-redux

Вопрос:

это место, где мой код застревает в onClick ();

я хотел изменить заголовок имени чата с помощью отправки (я слежу за каналом youtube -clever programmer для клона imessage), но действие не отправляется, но появляется ошибка, я использую firebase в качестве серверной части.

 import React from 'react'
import "./SidebarChat.css"
import { Avatar } from '@material-ui/core'
import { useDispatch } from 'react-redux'
import setChat from "./features/chatSlice"

function SidebarChat({id,chatName}) {

const dispatch =  useDispatch();

    return (
        <div 
        onClick={()=>(
            dispatch(setChat({
                    chatId: id,
                    chatName: chatName
                })))
        }
        className='sidebarChat'>
            <Avatar />
            <div className="sidebarChat__info">
                <h3>{chatName}</h3>
                <p>Last messg</p>
                <small>timestamp</small>
            </div>
        </div>
    )
}

export default SidebarChat

  

это chatslice

 import { createSlice } from '@reduxjs/toolkit';

export const chatSlice = createSlice({
  name: 'chat',
  initialState: {
    chatId: null,
    chatName: null,
  },
  reducers: {
    setChat: (state,action) =>  {
      state.chatId = action.payload.chatId;
      state.chatName = action.payload.chatName;
    },
  },
});

export const { setChat } = chatSlice.actions;


export const selectChatId = (state) => state.chat.chatId;
export const selectChatName = (state) => state.chat.chatName;

export default chatSlice.reducer;

  

это хранилище redux

 import { configureStore } from '@reduxjs/toolkit';
import userReducer from '../features/userSlice';
import chatReducer from '../features/chatSlice';

export default configureStore({
  reducer: {
    user: userReducer,
    chat: chatReducer,
  },
});

  

Я новичок, и я просматривал каждую доступную страницу, но я ничего не мог получить, может кто-нибудь, пожалуйста, помогите мне

Это сообщение об ошибке, которое оно выдает введите описание изображения здесь

Ответ №1:

Вы должны импортировать setChat следующим образом.

 import { setChat } from "./features/chatSlice"
  

Комментарии:

1. ты мой спасатель, я собирался отказаться от этого проекта, но еще раз спасибо

2. Если это сработало для вас, не стесняйтесь принять мой ответ.

3. Я новичок в stack overflow, поэтому я не знаю, что означает accept в любом случае, я пытался понравиться вашему ответу, какой стек мне не позволяет, поскольку моя репутация меньше 15