hooks icon indicating copy to clipboard operation
hooks copied to clipboard

[feature] useUrlState 支持嵌套对象

Open Darcrandex opened this issue 1 year ago • 3 comments

目前 query-string 的嵌套得这么写 nesting,有点麻烦啊;能不能考虑改成使用 qs ?

Darcrandex avatar May 30 '23 01:05 Darcrandex

query-string 换成 qs 是个破坏性更改,parseOptions, stringifyOptions 配置项将变得不一样。可以考虑提供个参数,允许用户指定内部使用的 parse, stringify 函数,这样不会引入破坏性更改,比如:

import qs from 'qs';

const [state, setState] = useUrlState(
  { ids: ['1', '2', '3'] },
  {
    parse: qs.parse,
    stringify: qs.stringify,
  },
);

cc @hchlq 你觉着呢?

liuyib avatar May 30 '23 03:05 liuyib

感觉可以,自定义 parse 和 stringify,不过 v4 可以做更改

hchlq avatar May 30 '23 04:05 hchlq

query-string 换成 qs 是个破坏性更改,parseOptions, stringifyOptions 配置项将变得不一样。可以考虑提供个参数,允许用户指定内部使用的 parse, stringify 函数,这样不会引入破坏性更改,比如:

import qs from 'qs';

const [state, setState] = useUrlState(
  { ids: ['1', '2', '3'] },
  {
    parse: qs.parse,
    stringify: qs.stringify,
  },
);

cc @hchlq 你觉着呢?

@liuyib 期待这个功能,同样遇到了嵌套对象问题

andyyxw avatar Dec 06 '23 09:12 andyyxw