mirror of
https://github.com/usememos/memos.git
synced 2025-06-05 22:09:59 +02:00
chore: fix filter initial state
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import store, { useAppSelector } from "..";
|
||||
import { Filter, setFilter } from "../reducer/filter";
|
||||
import { setFilter } from "../reducer/filter";
|
||||
|
||||
export const useFilterStore = () => {
|
||||
const state = useAppSelector((state) => state.filter);
|
||||
@@ -9,9 +9,6 @@ export const useFilterStore = () => {
|
||||
getState: () => {
|
||||
return store.getState().filter;
|
||||
},
|
||||
setFilter: (filter: Filter) => {
|
||||
store.dispatch(setFilter(filter));
|
||||
},
|
||||
clearFilter: () => {
|
||||
store.dispatch(
|
||||
setFilter({
|
||||
|
@@ -8,9 +8,23 @@ interface State {
|
||||
|
||||
export type Filter = State;
|
||||
|
||||
const getInitialState = (): State => {
|
||||
const state: State = {};
|
||||
const urlParams = new URLSearchParams(location.search);
|
||||
const tag = urlParams.get("tag");
|
||||
const text = urlParams.get("text");
|
||||
if (tag) {
|
||||
state.tag = tag;
|
||||
}
|
||||
if (text) {
|
||||
state.text = text;
|
||||
}
|
||||
return state;
|
||||
};
|
||||
|
||||
const filterSlice = createSlice({
|
||||
name: "filter",
|
||||
initialState: {} as State,
|
||||
initialState: getInitialState(),
|
||||
reducers: {
|
||||
setFilter: (state, action: PayloadAction<Partial<State>>) => {
|
||||
if (JSON.stringify(action.payload) === state) {
|
||||
|
Reference in New Issue
Block a user