小编sut*_*hoy的帖子

登录控制台时如何查看状态而不是减速器操作中的代理对象?

console.log()reducer 操作中使用时,状态打印为 Proxy 对象,而不是我实际想要查看的对象。如何看到实物?我正在使用 redux-starter-kit createSlice,我不确定这是否与它有关。

import { createSlice } from "redux-starter-kit";

export interface IToDo {
    id: number;
    name: string;
    complete: boolean;
}

const initialState: IToDo[] = [
    {
        id: 1,
        name: 'Read a bit',
        complete: true
    }
];

const { actions, reducer } = createSlice({
    slice: "todos",
    initialState,
    reducers: {
        toggleTodo(state: IToDo[], action) {
            const todo = state.find(todo => todo.id === action.payload);
            console.log(todo);
            if (todo) {
                todo.complete = !todo.complete;
            }
        }
    }
})

export const toDosReducer = …
Run Code Online (Sandbox Code Playgroud)

reactjs redux react-redux redux-toolkit

18
推荐指数
2
解决办法
5500
查看次数

“ResizeObserver”仅指一种类型,但在这里用作值

我收到错误:'ResizeObserver' only refers to a type, but is being used as a value here尝试在 React 中使用 ResizeObserver 和 TypeScript 时。

我定义了以下接口,因为 TypeScript 不包含定义:

interface ResizeObserver {
    observe(target: Element): void;
    unobserve(target: Element): void;
    disconnect(): void;
}
Run Code Online (Sandbox Code Playgroud)

我在以下组件中使用它:

const useWidth = () => {

    const ref = useRef<HTMLObjectElement>(null);

    const [width, setWidth] = useState(0);

    useLayoutEffect(() => {

        var resizeObserver = new ResizeObserver(() => console.log("blah blah blah"))
        resizeObserver.observe(ref.current)

        return () => resizeObserver.disconnect()

    }, [ref.current])

    return [ref, width];
}
Run Code Online (Sandbox Code Playgroud)

typescript reactjs

9
推荐指数
1
解决办法
5092
查看次数

标签 统计

reactjs ×2

react-redux ×1

redux ×1

redux-toolkit ×1

typescript ×1