如何解决类型对象上不存在属性“过滤器”
我正在使用 zustand 和 typescript。我的代码出现此错误
Property 'filter' does not exist on type 'object'.ts(2339)
我不知道如何解决这个问题。 我正在从我的 useStore 库中创建一个对象。 我试过使用“类型”,但它在代码编辑器上抛出这些错误 error
TS
import React from "react";
import "./App.css";
import create from "zustand";
type PkState = {
filter: "",pokemon: [],}
const useStore = create((PkState) => ({
PkStateFilter: (filter) =>
PkState((state) => ({
...state,filter,})),PkStatePokemon: (pokemon) =>
PkState((state) => ({
...state,pokemon,}));
// input
const FilterInput = () => {
const filter = useStore((state) => state.filter);
const PkStateFilter = useStore((state) => state.PkStateFilter);
return ( <input value={filter} onChange=((evt)=>PkStateFilter(evt.target.value)) />
)
};
function App() {
return <div className="App"></div>;
}
export default App;
解决方法
我不确定这是否会奏效,请在接下来的方式中尝试分散 filter
的注意力:
const { filter } = useStore((state) => state);
您也可以使用 console.log 调试 useStore
,以检查返回的内容:
const returnedState = useStore((state) => state);
// Check does `filter` exists in state
console.warn('returnedState',returnedState);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。