这是我进行 api 调用的地方export const filteredProducts = (e) => { const radio = e.target.checked; return dispatch => { dispatch({type: actionTypes.TOGGLE_LOAD}); axios.get(radio ? `/store?limit=9&skip=0&subcategory=${e.target.value}` : `/store?limit=9&skip=0`) .then(response => { dispatch(setFilter(response.data, radio)); }) }}我想做这样的事情。每当我点击过滤器按钮时,事件都必须附加到现有的 url。axios.get(`/store?limit=9&skip=0&subcategory=${e.target.value}&brand=${e.target.value}&{e.target.value}`)我真的不知道如何提出这个问题。如果您想让我说得更清楚,我会尽力做到这一点。因为这是客户项目,所以我无法共享代码库。提前致谢
1 回答
眼眸繁星
TA贡献1873条经验 获得超9个赞
使用URL 和 url.searchParams API
const url = new URL("/store?limit=9&skip=0");
const makeUrl = (name, value) => {
if (name) {
url.searchParams.append(name,value); // or searchParams.set to not append
}
return url;
};
export const filteredProducts = (e) => {
const radio = e.target.checked;
return dispatch => {
dispatch({type: actionTypes.TOGGLE_LOAD});
axios.get(radio ? makeUrl(e.target.name, e.target.value) : makeUrl())
.then(response => {
dispatch(setFilter(response.data, radio));
})
}
}
添加回答
举报
0/150
提交
取消